【发布时间】:2017-05-24 19:05:27
【问题描述】:
我有一个file.txt,其中包含以下列
id chr pos alleleA alleleB
1 01 1234 CT T
2 02 5678 G A
3 03 8901 T C
4 04 12345 C G
5 05 567890 T A
我正在寻找一种创建新列的方法,使其看起来像:chr:pos:alleleA:alleleB
问题是 alleleA 和 alleleB 应该基于以下排序:
1. 字母顺序
2. 每行有更多字母的这两列中的任何一列都应该是第一列,然后是第二列
在这个例子中,它看起来像这样:
id chr pos alleleA alleleB newID
1 01 1234 CT T chr1:1234:CT:T
2 02 5678 G A chr2:5678:A:G
3 03 8901 T C chr3:8901:C:T
4 04 12345 C G chr4:12345:C:G
5 05 567890 T A chr5:567890:A:T
感谢任何帮助和建议。谢谢。
编辑
到目前为止,我可以修改chr 列,使其看起来像“chr:1”...
AlleleA 和 AlleleB 列应该组合起来,这样如果任一列包含超过 1 个字母,则在 newID 列中它会排在第一位。如果两列中只有一个字母,则这些字母在newID列中按字母顺序排列
【问题讨论】:
-
你自己尝试了什么?
-
请详细说明订购。您的样本没有说明问题,因为按字母顺序对等位基因进行排序足以获得所需的输出。