这是我的输入文件的样本:awk的柱的平均部分,如果线(特定字段)匹配
$cat NDVI-bm
P01 031.RAW 0.516 0 0
P01 021.RAW 0.449 0 0
P02 045.RAW 0.418 0 0
P03 062.RAW 0.570 0 0
P03 064.RAW 0.469 0 0
P04 083.RAW 0.636 0 0
P04 081.RAW 0.592 0 0
P04 082.RAW 0.605 0 0
P04 084.RAW 0.648 0 0
P05 093.RAW 0.748 0 0
如果第一字段匹配我需要平均柱3。很简单,但我挣扎的我的awk知识是很基础...这是我到目前为止有:
awk '{array[$1]+=$3(need to divide here by number of matches...)} END { for (i in array) {print i"," array[i]}}' NDVI-bm
在网上搜索,我真的不知道我在标题中正确的方式...除非有一个简单的方法来计算匹配的数量,至少我不能找到...任何想法?
感谢您的帮助!
感谢您的回答弗雷德里克,但我的文件是相当大的......我不能计算出平均一个接一个。 – Chargaff
查看更新回答:-) –
嘿,这是一个非常简单和优雅的解决方案...我正在寻找一种复杂的方式...我正在学习!再次感谢 ! – Chargaff