【发布时间】:2017-12-27 20:24:43
【问题描述】:
我是 Python 新手,我想做以下事情。我有一个包含标题行和 4 列的 csv 文件(input.csv)。该 csv 文件的一部分如下所示:
gene-name p-value stepup(p-value) fold-change
IFIT1 6.79175E-005 0.0874312 96.0464
IFITM1 0.00304362 0.290752 86.3192
IFIT1 0.000439152 0.145488 81.499
IFIT3 5.87135E-005 0.0838258 77.1737
RSAD2 6.7615E-006 0.0685623 141.898
RSAD2 3.98875E-005 0.0760279 136.772
IFITM1 0.00176673 0.230063 72.0445
我想只保留 fold-change 值最高的行,并删除所有其他包含相同基因名称但 fold-change 值较低的行。例如,在这种情况下,我需要以下格式的 csv 输出文件:
gene-name p-value stepup(p-value) fold-change
IFIT1 6.79175E-005 0.0874312 96.0464
IFITM1 0.00304362 0.290752 86.3192
RSAD2 6.7615E-006 0.0685623 141.898
IFIT3 5.87135E-005 0.0838258 77.1737
如果您为我提供此问题的解决方案,我将不胜感激。
非常感谢。
【问题讨论】:
-
你尝试了吗?发布您的代码....
-
我尝试先按名称排序,然后使用 df.sort 保留基因的第一个最高倍数变化值,但没有成功。