免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: huang6894
打印 上一主题 下一主题

想批量对文本指定位置替换 [复制链接]

论坛徽章:
8
技术图书徽章
日期:2013-08-22 11:21:28未羊
日期:2015-01-19 22:22:25巳蛇
日期:2014-08-11 16:53:08子鼠
日期:2014-05-29 09:04:44摩羯座
日期:2014-04-11 14:15:07丑牛
日期:2014-01-24 12:41:28金牛座
日期:2013-11-21 17:38:28射手座
日期:2015-01-21 08:50:32
11 [报告]
发表于 2014-04-02 16:42 |只看该作者
回复 9# pitonas


    吐司哥,请教一下~
如果:
题目中的文本二变成:
  1. >chr1:2336191-2337323
  2. TCGAGGCATTTTAACACTGCGCTTCAGGAAATCTCAAGTTCCATCTTGTGTTAGTAACGTACCCACATTTTGCTGGAGTTAGTTTATTAAAGATGCCTACGGTGAACTCTCTGGCGCAGGTTAAATGCA{....很多.....}GAAAACCTGGAAACATCAAATGG
  3. >chr1:2337873-2338108
  4. GCCGGCACAGCCGCTGACCACCCCAGGACGGCAGCAGGCTCCCACCTCACCTTGCTGCTGCACCACGCGGTGATGCACTCCCAGCAGAACAGGTGGCCGCAGGGCGTGGCTGTTGGGTGCCTGCG{....很多.....}CACAGGGTGCACAGGGGGTTTC
  5. >chr2:2338109-2338444
  6. ACGGCAGCAGGCTCCCACCTCACCTTGCTGCTGCACCACGCGGTGATGCACTCCCAGCAGAACAGGTGGCCGCAGGGCGTGGCTGTTGGGTGCCTGCGCTCCTCCAGGCACAG{....很多.....}GGTGCACAGGGGGTTTC
复制代码
这样的,>chr1:2336191-2337323表示下一行的【TCGA...】是chr1这个key2336191至2337323位,我如果还想批量定位替换这样好实现吗?
比如:chr1    2337223        2337224        A       G 就把>chr1:2336191-2337323下面的value字符串第(2337223-2336191+1)位由A变G。。。
如果是:chr1    2338106        2338108        TT       G就跳过>chr1:2336191-2337323部分处理>chr1:2337873-2338108下面的value字符串第(2338106-2336191+1)位到第(2338107-2336191+1)位的TT变成G
如果是:chr1    2338109        2338110        GT       G就跳过不对文本处理,因为找不到chr1符合2338109        2338110  范围的。。。
如果是:chr1    2338106        2338110        TTGT       G就跳过>chr1:2336191-2337323部分处理>chr1:2337873-2338108下面的value字符串第(2338106-2336191+1)位到第(2338108-2336191+1)位的TTG变成G(因为这里chr1最大值是2338108)

求职 : 软件工程师
论坛徽章:
3
程序设计版块每日发帖之星
日期:2015-10-07 06:20:00程序设计版块每日发帖之星
日期:2015-12-13 06:20:00程序设计版块每日发帖之星
日期:2016-05-05 06:20:00
12 [报告]
发表于 2014-04-02 20:49 |只看该作者
很大部分的代码在做一个解析器

论坛徽章:
8
技术图书徽章
日期:2013-08-22 11:21:28未羊
日期:2015-01-19 22:22:25巳蛇
日期:2014-08-11 16:53:08子鼠
日期:2014-05-29 09:04:44摩羯座
日期:2014-04-11 14:15:07丑牛
日期:2014-01-24 12:41:28金牛座
日期:2013-11-21 17:38:28射手座
日期:2015-01-21 08:50:32
13 [报告]
发表于 2014-04-02 23:05 |只看该作者
回复 12# 104359176


    不懂。。。

论坛徽章:
7
戌狗
日期:2013-12-15 20:43:38技术图书徽章
日期:2014-03-05 01:33:12技术图书徽章
日期:2014-03-15 20:31:17未羊
日期:2014-03-25 23:48:20丑牛
日期:2014-04-07 22:37:44巳蛇
日期:2014-04-11 21:58:0915-16赛季CBA联赛之青岛
日期:2016-03-17 20:36:13
14 [报告]
发表于 2014-04-03 01:39 |只看该作者
不懂~
建议
1: 为说明问题, 这样的 sample is better:
  1. >chr1:2-5
  2. TCGA
  3. >chr1:7-10
  4. TTCGA
复制代码
2: and paste 替换de结果 is better

求职 : 软件工程师
论坛徽章:
3
程序设计版块每日发帖之星
日期:2015-10-07 06:20:00程序设计版块每日发帖之星
日期:2015-12-13 06:20:00程序设计版块每日发帖之星
日期:2016-05-05 06:20:00
15 [报告]
发表于 2014-04-03 08:04 |只看该作者
回复 13# huang6894
解析器就是把文本转换成数据结构。

   

论坛徽章:
8
技术图书徽章
日期:2013-08-22 11:21:28未羊
日期:2015-01-19 22:22:25巳蛇
日期:2014-08-11 16:53:08子鼠
日期:2014-05-29 09:04:44摩羯座
日期:2014-04-11 14:15:07丑牛
日期:2014-01-24 12:41:28金牛座
日期:2013-11-21 17:38:28射手座
日期:2015-01-21 08:50:32
16 [报告]
发表于 2014-04-03 09:17 |只看该作者
回复 14# rubyish


    谢谢大大。。。
    简化一下就是:
sample:
文本一:
  1. chr1    2       3       N       A
  2. chr1    4       7       NNN     T(注意这里,如果4-7分配到两个区域,改变发生区域以其实坐标“4”为准)
  3. chr2    3      4      N       GGGGG
  4. chr2     7      10   TGG    A
复制代码
文本二
  1. >chr1:1-5
  2. TNGNN
  3. >chr1:6-15
  4. NTG
  5. >chr2:1-8
  6. TTNCCTTG
复制代码
得到的结果:

  1. >chr1:1-5
  2. TAGT(也就是4-5的N变成了T)
  3. >chr1:6-15
  4. TG(6位的N删除了)
  5. >chr2:1-8
  6. TTGGGGGCCTA(计算的时候如果前面的位置已经发生过突变了,比如‘chr2     7      10   TGG    A’应该是改变原来文本上的第7位-第9位的TGG 为N,但是前面‘chr2    3      4      N       GGGGG‘这里的变化使得增加了4位,后面‘chr2     7      10   TGG    A’改变的就相当于改变的是文本的第11位至13位的TGG变成了A,又因为区域只有1-8(发生‘chr2    3      4      N       GGGGG’后变成了1-12,)所以排除了第9位。。
复制代码

论坛徽章:
8
技术图书徽章
日期:2013-08-22 11:21:28未羊
日期:2015-01-19 22:22:25巳蛇
日期:2014-08-11 16:53:08子鼠
日期:2014-05-29 09:04:44摩羯座
日期:2014-04-11 14:15:07丑牛
日期:2014-01-24 12:41:28金牛座
日期:2013-11-21 17:38:28射手座
日期:2015-01-21 08:50:32
17 [报告]
发表于 2014-04-06 15:44 |只看该作者
up.........

论坛徽章:
5
丑牛
日期:2014-01-21 08:26:26卯兔
日期:2014-03-11 06:37:43天秤座
日期:2014-03-25 08:52:52寅虎
日期:2014-04-19 11:39:48午马
日期:2014-08-06 03:56:58
18 [报告]
发表于 2014-04-08 17:27 |只看该作者
o(︶︿︶)o ~ 唉。。。 不懂。。。看不懂。。。
不好意思啊, 完全看不懂。。。


回复 17# huang6894


   

论坛徽章:
8
技术图书徽章
日期:2013-08-22 11:21:28未羊
日期:2015-01-19 22:22:25巳蛇
日期:2014-08-11 16:53:08子鼠
日期:2014-05-29 09:04:44摩羯座
日期:2014-04-11 14:15:07丑牛
日期:2014-01-24 12:41:28金牛座
日期:2013-11-21 17:38:28射手座
日期:2015-01-21 08:50:32
19 [报告]
发表于 2014-04-08 18:09 |只看该作者
回复 18# pitonas


    吐司哥。。。吐司哥。。。

论坛徽章:
5
丑牛
日期:2014-01-21 08:26:26卯兔
日期:2014-03-11 06:37:43天秤座
日期:2014-03-25 08:52:52寅虎
日期:2014-04-19 11:39:48午马
日期:2014-08-06 03:56:58
20 [报告]
发表于 2014-04-08 18:52 |只看该作者
{:2_172:}大神 你一定要好好研究下
关键首要点是: 你得把问题讲清楚

可否麻烦再 edit 你的问题下!
谢谢!

回复 19# huang6894


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP