我有一个tab文件,我想把一个基因的特征(upstream,downstrs,downupst,annotate或……)划分为标准特征。 最后两列是我要生成的cond\u a和cond\u b的结果列。 我写了一个代码,可以将每一行保存在一个元组中,然后搜索元组并进行划分,但这让我很困惑。 如何在Python中执行此操作?你知道吗
for line in open(myfile,"r").readlines():
Fld = line.strip().split("\t")
gene,feature,cond_a,cond_b= Fld[0],Fld[1],int(Fld[2]),int(Fld[3])
gene feature cond_a cond_b
A upstream 2 5 2/5 5/8
A standard 5 8 5/5 8/8
C standard 4 23 4/4 23/23
D downstrs 3 1 3/9 1/5
D standard 9 5 9/9 5/5
H standard 2 9 2/2 9/9
H downupst 1 2 1/2 2/9
H annotate 4 8 4/2 8/9
谢谢,但这不是我想计算的,让我们把问题弄清楚,前2/5是第一行(2)除以第二行(5)(基因A的标准)。5/5本身就是除法,因为它是1的标准。最后一行(4/2)将最后一行除以第6行
上游2/5
标准5/5
C标准4/4
下降3/9
D标准9/9
H标准2/2
下一步1/2 注释4/2
很难准确地说出你想要什么(为了将来的参考,最好省略与领域相关而与编程无关的技术细节——这让我们这些对基因一无所知的人更容易得到帮助),我也说不出你是如何准确地计算这两列的。不过,这看起来像是熊猫的工作。你可以做这样一个简单的例子:
对于您的数据,您可以将其加载到:
不管您如何计算其他列,您都可以很容易地使用Pandas进行计算。此外,您还可以按各种类别分组以处理子集,依此类推。你知道吗
相关问题 更多 >
编程相关推荐