免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4519 | 回复: 4
打印 上一主题 下一主题

关于hash的问题求助 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2018-01-03 15:51 |只看该作者 |倒序浏览
我有大概这样一个文件,里面共有3列:(第一列为染色体编号;第二列为位置号(一二列合起来相当于一个坐标,是唯一的);第三列为对应碱基)
1  123   A
1  124   T
2  125   T
2  567   G
还有另一文件:共102列
1  123   NA   NA   NA   A  T  G  C  NA ……
1  124   G     T  NA    T   T   T   NA   C ……
2  125   T     NA   NA   A  T  G……
2  567   C     G   NA   A  T  G……

希望能把第二个文件中NA替换掉,改成第一个文件中的第三列的碱基,而原本有碱基的则不改变,写了好久都不对,恳请各位前辈赐教该如何写这个脚本?

论坛徽章:
0
2 [报告]
发表于 2018-01-03 17:35 |只看该作者
本帖最后由 sunslj 于 2018-01-03 17:43 编辑

把第一个文件的前两列做key,第三列做value。读取第二个文件时,循环2。。101,匹配‘NA’,替换成哈希值

TIM图片20180103174258.png (55.31 KB, 下载次数: 48)

TIM图片20180103174258.png

论坛徽章:
0
3 [报告]
发表于 2018-01-03 19:02 |只看该作者
非常感谢您的回复!但是好像还有一点点小问题,最后得到的结果文件只有三列,应该是只替换了每行的第一个NA ?
麻烦大神指点~~

OUT结果如下:
[niuguohao@su01 new]$ more out.vcf
BAUE01023895.1  11793   A
BAUE01023895.1  11796   A
BAUE01023895.1  11805   A
BAUE01023895.1  13077   C
BAUE01023895.1  13349   A
BAUE01023895.1  13364   C
BAUE01023895.1  1472    C
BAUE01023895.1  1492    C
BAUE01023895.1  16762   C
BAUE01023895.1  18222   G
BAUE01023895.1  18465   G
BAUE01023895.1  18466   T
BAUE01023895.1  18498   G
BAUE01023895.1  18665   G
BAUE01023895.1  18677   C
BAUE01023895.1  18683   C
BAUE01023895.1  18687   T
……

论坛徽章:
0
4 [报告]
发表于 2018-01-03 20:14 |只看该作者
sunslj 发表于 2018-01-03 17:35
把第一个文件的前两列做key,第三列做value。读取第二个文件时,循环2。。101,匹配‘NA’,替换成哈希值

非常感谢您的回复!但是好像还有一点点小问题,最后得到的结果文件只有三列,应该是只替换了每行的第一个NA ?
麻烦大神指点~~

OUT结果如下:
[niuguohao@su01 new]$ more out.vcf
BAUE01023895.1  11793   A
BAUE01023895.1  11796   A
BAUE01023895.1  11805   A
BAUE01023895.1  13077   C
BAUE01023895.1  13349   A
BAUE01023895.1  13364   C
BAUE01023895.1  1472    C
BAUE01023895.1  1492    C
BAUE01023895.1  16762   C
BAUE01023895.1  18222   G
BAUE01023895.1  18465   G
BAUE01023895.1  18466   T
BAUE01023895.1  18498   G
BAUE01023895.1  18665   G
BAUE01023895.1  18677   C
BAUE01023895.1  18683   C
BAUE01023895.1  18687   T
……

论坛徽章:
0
5 [报告]
发表于 2018-01-03 20:40 |只看该作者
非常不好意思,谢谢大神!!!代码是对的,我自己搞错了。非常感谢!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP