我有一个已经根据第一列分组的表。我想将表拆分为子表,只包含相应的第二列。我想在python中使用pandas或其他东西。我不喜欢使用“awk”,因为这将需要我“subprocess”或“os”。最后,我实际上只需要第二列中根据第一列分隔的条目。表的大小大约为10000行X 6列。在
这些都是我发现的类似帖子,但我不知道如何修改它们以达到我的目的。 Split pandas dataframe based on groupby
Splitting groupby() in pandas into smaller groups and combining them
P0A910 sp|A0A2C5WRC3| 84.136 0.0 100
P0A910 sp|A0A068Z9R6| 73.816 0.0 99
Q9HVD1 sp|A0A2G2MK84| 37.288 4.03e-34 99
Q9HVD1 sp|A0A1H2GM32| 40.571 6.86e-32 98
P09169 sp|A0A379DR81| 52.848 2.92e-117 99
P09169 sp|A0A127L436| 49.524 2.15e-108 98
我想把它分成以下几部分
Q9HVD1 A0A2G2MK84
Q9HVD1 A0A1H2GM32
P09169 A0A379DR81
P09169 A0A127L436
或列在列表中
A0A2C5WRC3
A0A068Z9R6
A0A2G2MK84
A0A1H2GM32
A0A379DR81
A0A127L436
所以你的问题是把绳子分开。这是你想要的:
所以我设法找到了某种解决办法。在这个解决方案中,我设法删除了第二列中的前缀,并使用pandas中的groupby将条目按第一列分组。然后,循环使用它并将每个组分别写入csv文件。我得到了@Quang的回答和这个link的帮助。也许可以用更好的方法来完成,但我的代码是:
更新-删除了除感兴趣的列之外的所有列。这是先前代码的延续
^{pr2}$相关问题 更多 >
编程相关推荐