忘记密码   免费注册 查看新帖 |

ChinaUnix.net

  平台 论坛 博客 文库 频道自动化运维 虚拟化 储存备份 C/C++ PHP MySQL 嵌入式 Linux系统
最近访问板块 发新帖
查看: 2706 | 回复: 4

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

论坛徽章:
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
发表于 2018-01-03 17:35 |显示全部楼层
本帖最后由 sunslj 于 2018-01-03 17:43 编辑

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

论坛徽章:
0
发表于 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
发表于 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
发表于 2018-01-03 20:40 |显示全部楼层
非常不好意思,谢谢大神!!!代码是对的,我自己搞错了。非常感谢!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号 北京市公安局海淀分局网监中心备案编号:11010802020122
广播电视节目制作经营许可证(京) 字第1234号 中国互联网协会会员  联系我们:wangnan@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP