【发布时间】:2015-03-12 15:21:42
【问题描述】:
我有一个包含两列的数据文件。我想从第二列中找出最大数据值,并将第二列的每个条目除以最大值。 (所以我会得到第二列
我尝试使用以下命令:
awk 'BEGIN {max = 0} {if ($2>max) max=$2} {print ($2/max)}' angleOut.dat
但我收到如下错误消息。
awk: (FILENAME=angleOut.dat FNR=1) fatal: division by zero attempted
注意:第二列中有一些数据为零值。但是当零值除以最大值时,我应该得到零,但我得到了如上所示的错误。
我能得到任何帮助吗?
非常感谢。
【问题讨论】:
-
这里的逻辑是不正确的,因为它不会从第二列中找到最大值,因为它将把数字除以到目前为止看到的最大数字(这个看到的最大值可能不是实际的最大值第二列)提供一些示例输入和预期输出以更清晰。