我有一个文件,上面有这样的行:
NM_chr7+115926679 115935830 115927071 11593344 2 115926679115933260,(对本栏感兴趣,这些数字被称为外显子起始)115927221115935830,(而这一个,这些被称为外显子结束)
最后两列(以逗号分隔的列)可以有不同数量的整数。这意味着它可以有5个数字,用逗号分隔,甚至15个。你知道吗
如果我有文件的第一行,我会想要这样一行:
NM_198212|chr7(+):115926679-115935830|115926679-115927221,115933260-115935830 (yet this could go on based on the amount of start and ends given)
在更简单的范围内:
纳米????chr12-10 110 10 110 3 10,50100,20,60110
我希望那条信息线的尽头是10-20,50-60100-110
如何编写一个代码,使我想要输出的行的末尾包含这些代码中的每一个,而不考虑数字的数量。你知道吗
我有这个代码,它将配对所有的开始和结束,如果这是有用的。你知道吗
fp = (infile, 'r')
for line in fp:
tokens = line.split()
exonstarts = tokens[8][:-1].split(',')
exonends = tokens[9][:-1].split(',')
zipped = list(zip(exonstarts, exonends))
对于上面的例子,zipped应该是[(10,20),(50,60),(100,110)]。我的问题是如何将它合并到我想要的信息行中(除了包含开始和结束的部分之外,我已经编写了整个表达式)。你知道吗
因此,我不知道如何将这些从列表中取出并转换成我想要的格式。你知道吗
不确定这是你想要的,但是:
如果压缩==[(10,20),(50,60),(100,110)]
相关问题 更多 >
编程相关推荐