首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何从linux中的主数据填充子集数据字段

如何从linux中的主数据填充子集数据字段
EN

Stack Overflow用户
提问于 2019-04-15 23:33:22
回答 1查看 48关注 0票数 0

我有一个带有rs ids (和其他字段)的SNP数据子集,我想用它们各自的染色体编号和染色体位置创建两个新列。我有一个包含所有SNPs的主文件(rs I,染色体编号,位置...等),我希望使用命令行从主文件填充我的文件(我的子集文件有大约300万行)。

我在想像join、if then语句、awk (或者它们的组合)之类的东西。

例如,我所拥有的:

file1

代码语言:javascript
复制
SNP A1  A2  Freq1.Hapmap    b   se  p   N
rs1000000   G   A   0.6333  1e-04   0.0043  0.9814  233572
rs10000010  T   C   0.575   -0.0022 0.0029  0.4384  339148

file2

代码语言:javascript
复制
ID  SNP Chromosome  Position    REF Allele  ALT Allele  Contig  Contig Position Band    dbSNP
chr10:1175426:C/G:1 rs1000000   chr10   1175426 C   G   GL000093.1  1115426 p15.3   rs184435191
chr10:31133635:T/C:1    rs143579887 chr10   31133635    T   C   GL000093.1  31073635    p11.23  rs143579887
chr10:33247334:G/T:1    chr10:33247334:G/T:1    chr10   33247334    G   T   GL000093.1  33187334    p11.22  
chr11:118230335:A/G:1   rs10000010  chr11   118230335   A   G   GL000104.1  21792751    q23.3   rs147754044
chr11:132968833:A/C:1   chr11:132968833:A/C:1   chr11   132968833   A   C   GL000104.1  36531249    q25 
chr11:57678793:C/G:-1   rs77482717  chr11   57678793    C   G   GL000103.1  2984588 q12.1   rs77482717
chr11:61722645:C/A:1    chr11:61722645:C/A:1    chr11   61722645    C   A   GL000103.1  7028440 q12.3   rs1109748

我想要的:

代码语言:javascript
复制
SNP Chromosome  Position A1 A2  Freq1.Hapmap    b   se  p   N
        rs1000000   chr10   1175426 G   A   0.6333  1e-04   0.0043  0.9814  233572
        rs10000010  chr11   118230335 T C   0.575   -0.0022 0.0029  0.4384  339148
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-15 23:46:42

假设您的文件是用制表符分隔的:

代码语言:javascript
复制
$ awk 'BEGIN{FS=OFS="\t"}NR==FNR{a[$2]=$3 OFS $4;next}{$2=a[$1] OFS $2}1' file2 file1
SNP Chromosome  Position    A1  A2  Freq1.Hapmap    b   se  p   N
rs1000000   chr10   1175426 G   A   0.6333  1e-04   0.0043  0.9814  233572
rs10000010  chr11   118230335   T   C   0.575   -0.0022 0.0029  0.4384  339148

对于file2中的所有记录:将每个单核苷酸多态性与数组中相应的染色体和位置值相关联,file1:从数组中检索与每个单核苷酸多态性关联的染色体和位置值,并在第二列之前插入。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55692636

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档