我試圖從每秒鐘到每分鐘(以當天所有數值的平均值爲單位)彙總數據。我的數據的時間戳的形式爲:使用Awk將時間戳數據從每秒鐘轉換爲每分鐘的更好方法
date time[h:m:s-03:00],X,value
2016-05-29 15:50:33-03:00,X,561
2016-05-29 15:50:34-03:00,X,565
....
我已經破解我的方式與下面的代碼的答案,但我想找到一個更好的,更清潔的方式做到這一點:
awk -F: 'BEGIN{
foo_total=0;
foo=0; }
{
split($4,ar,",");
foo=ar[3];
split($3,a,"-");
if(a[1]~"00"){
first_foo=ar[3]}
if(a[1]!~"00"){
foo_total+=ar[3]}
foo_sum=(first_foo + foo_total);
foo_final=foo_sum/60
if(a[1]~"59") {printf $1":"$2","foo_final"\n"; foo_total=0; first_foo=0;} }' MyFile.csv
非常感謝您的幫助!
請指定樣本輸入和預期輸出以及相同的說明。 – piyushj
另一方面,你不應該在沒有格式字符串的情況下使用'printf'(用任何編程語言,awk,c,bash等)。 'printf stringvariable'可以正確寫成'printf'%s「,stringvariable' – anishsane