给定一个制表符分隔的数据文件(或另一个分隔符),如何计算一列的平均值?
遗憾的是,没有简单的二进制文件可以对这些文件执行简单的数学运算。
答案1
awk -F'\t' '{ sum += $1 } END { print sum / NR }'
这$1
是第一个\t
以 ab 分隔的列。
答案2
如果你安装了 R,你也可以使用:
Rscript -e "(mean(read.table(\"file.tab\")))"
您还可以将函数(平均值)更改为其他统计函数,例如:
Rscript -e "(mean(read.table(\"file.tab\")))"
Rscript -e "(sd(read.table(\"file.tab\")))"
Rscript -e "(summary(read.table(\"file.tab\")))"
如果要指定列,例如使用第 3 列,则使用符号 [,3]
Rscript -e "(sum(read.table(\"file\")[,3]))"
享受!