BEGIN { print("Day Air SST T10 T20 T40 T60 T80 T100 T150 T200 T300 WINDU WINDV"); } (! /^#/ ) { newday = int($1); if ( (newday != day) && (day != 0) ) { printday(day); clearday(day); } day = newday; for ( i = 0; i < 12; i++ ) if ( $(i+3) > 0.5 ) { temp[i] += $(i+3); samples[i]++; } windu += $20; windv += $21; wsamples++; } END { printday(day); } function printday(day) { printf("%3d", day); for ( i = 0; i < 11; i++ ) if ( samples[i] > 0 ) printf( " %6.3f", temp[i]/samples[i] ); else printf( " 0.0 " ); if ( wsamples > 0 ) printf( " %6.3f %6.3f\n", windu/wsamples, windv/wsamples ); else printf( " 0.0 0.0\n" ); } function clearday(day) { for ( i = 0; i < 12; i++ ) { temp[i] = 0.0; samples[i] = 0; } windu = 0.0; windv = 0.0; wsamples = 0; }