首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取列的最大值

问获取列的最大值
EN

Stack Overflow用户
提问于 2016-12-19 01:01:20
回答 1查看 825关注 0票数 0

您好,我有一个这样的文件(包含n行):

代码语言:javascript
复制
0.001  5.4e+08 
0.03  0.08
0.5774  0.1
93  9832

现在我想读取每列的最大值。我像这样尝试了awk:

代码语言:javascript
复制
awk -v "max=0.2" -v "index=1" 'BEGIN{if (index>max) max=index} END {print max}' file

并将输出赋给一个变量。只有在shell中输入awk命令才会出现以下错误:

代码语言:javascript
复制
awk: run time error: cannot command line assign to index
    type clash or keyword
    FILENAME="" FNR=0 NR=0

问题是这个文件有n行,而我只遍历了某些行。我如何给awk这行代码,并读出该行列的最大值?

EN

回答 1

Stack Overflow用户

发布于 2016-12-19 01:03:31

index()是awk函数的名称,请选择不同的变量名称,如idx。

此外,要打印"index“的最大值,您不需要为最大值设置一些即席值,只需:

代码语言:javascript
复制
$ awk -v idx=1 'NR==1 || $idx>max{max=$idx} END{print max}' file
93
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41210739

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档