0

我正在尝试创建一个 python 程序,该程序将从我创建的文本文件中计算每个基因座的最大等位基因数。这是我正在使用的文本文件的示例。

          Locus1           Locus2          Locus3           Locus4

sample1   102 222 245      111 166          234              111 234   

sample2   156 199          111 229 233 289  177 189          227 233 299 303

在这个例子中,我有两个样本,其中有四个基因座的遗传数据(我的文件包含大约 500 个样本)。遗传数据是出现在每个基因座的等位基因。每个等位基因由三个数字组成。例如,在 sample1 和 locus1 中,代表了三个等位基因(102、222、245)。Sample1/Locus2 有两个等位基因(111 和 166);sample1/Locus3 有一个等位基因(234);和 sample1/Locus4 有两个等位基因(111 和 234)。

在下一个样本 sample2/Locus1 中有两个等位基因 (156,199);sample2/Locus2 有四个等位基因(111、229、233,289);sample2/Locus3 有两个等位基因(177、189),sample2/Locus4 有四个等位基因(227、233、299、303)。

我正在尝试创建一个 python 程序,该程序将找到在该样本中表达最多等位基因(最大数量)的基因座。在sample1中,表达的等位基因最多的是Locus1,因为它有3个等位基因,而Locus2和Locus4只有2个等位基因,Locus3只有1个等位基因。所以,我的输出数应该是 3。在 sample2 中,表达的等位基因最多的是 Locus2 和 Locus4。在这两个基因座上,它们有 4 个等位基因。所以我的输出数应该是 4。理想情况下,我的最终输出文件应该是旁边有最大等位基因数的样本列表。例如,

样品1 3

样品2 4

ETC....

此外,每个基因座由 7 个标签分隔,并且在每个基因座内,等位基因由一个标签分隔。

对于任何混淆,我深表歉意。我似乎无法弄清楚如何沿一行计算一组特定的数字(以文本文件中 7 个选项卡的倍数计算)并找出哪一组数字具有最高的这些数字集。 我会很感激任何想法。

4

0 回答 0