我想總結一個CSV中的列並用總和除以常量,但有些東西似乎並不正確。用AWK劃分列的總和不能正常工作
awk 'BEGIN{FS=OFS=","}
NR==1{print}
NR>1{for (i=1;i<=NF;i++) a[i]+=$i}
END{for (i=1;i<=NF;i++) if (a[i] != 0) printf $wierdConst/a[i] OFS; printf "\n"}'
當我沒有做劃分,
我得到總爲6440349377和我不斷$wierdConst
是39600000000.但當部門做好了所有我得到的是0.0160752這我不不知道它從哪裏來。任何幫助深表感謝。
在黑暗中拍攝 - 是'wierdConst'一個shell變量? Awk不是外殼 - 請參閱http://cfajohnson.com/shell/cus-faq-2.html#Q24 –
您將常數除以總和,而不是將常數除以總和。 – Barmar
EdMorton非常感謝..我根本不知道這一點。 Barmar的解決方案工作.. @Barmar標題是誤導。我想用列的總和除以你的解決方案的總和不變 –