0
awk -F, '$2>0 {print $1}' file.csv

这没有回报。

awk -F, '$2<0 {print $1}' file.csv

这将返回所有内容。

我想要的是如果 $2 的值小于 0,我想要 $1 中的名称。如果高于 0,则相同。

总而言之,我想将我的列表一分为二;高于和低于零。

文件.csv:

"" "log2FoldChange" "padj"
"AASS" 0.585822345291 0.0142249243232589
"ABCC3" -1.12579715427411 0.00503178459354681
4

1 回答 1

2

您已告诉 awk 在 character 上拆分其输入行,,但您的示例输入不包含任何,字符。您的示例输入使用空格分隔其输入字段。$1整个输入行也是如此,并且$2是空字符串,它总是小于0

修正你的输入,或者告诉 awk 分割空格。

此外,如果您使用的是 GNU awk,如果您的内容可以在带引号的字段中包含空格(或逗号?),您可能需要阅读GNU awk 用户指南中的“按内容拆分” 。

于 2013-10-20T14:02:19.687 回答