【发布时间】:2015-03-28 03:33:36
【问题描述】:
我正在尝试根据另一列中的变量/字段选择列中的最高值。这是一个非常大的制表符分隔文件。
输入:
Names col2 col3 col4
A A1 def 10
A A1 BBB 10
A A1 CED 10
A A1 fff 7.5
B B1 def 7.5
B B1 dff 5.5
B B1 fff 4.5
C C1 ggg 6.5
C C3 iii 6.5
C C2 hhh 5.0
C C4 toi 6.5
D D1 xyz 10.0
D D2 ikj 7.5
D D3 abc 7.5
...
输出
Names col2 col3 col4
A A1 def 10
A A1 BBB 10
A A1 CED 10
B B1 def 7.5
C C1 ggg 6.5
C C3 iii 6.5
C C4 toi 6.5
D D1 xyz 10.0
基本上,我想要所有值为 10 的行以及 column1 中每个名称的最高值。非常感谢任何通过 perl、awk 或 sed 解决此问题的输入。
谢谢。
【问题讨论】:
-
嗨,欢迎来到 Stack Overflow!如果您在此处询问之前努力寻找解决方案,我们更愿意。你能告诉我们你的尝试吗?
-
我是生物信息学的初学者。我尝试将 perl 与 while 循环和 If $_[3] > "10" 一起使用。我停在那里,因为我不知道如何根据每个名称的最高值进行选择。
-
您应该向我们展示代码,我们可以提供帮助。