1#!/sw/bin/gawk -f 2 3BEGIN{ 4 args = ""; 5 for(i=1; ARGV[i]; i++) 6 { 7 args = args " " ARGV[i]; 8 } 9} 10 11function success_rate(file , tmp, succ) 12{ 13 pipe = "tsm_classify " args " " file; 14 while ((pipe | getline tmp) > 0) 15 { 16 if(match(tmp, /successes\,/)) 17 { 18 succ = substr(tmp, RSTART+RLENGTH); 19 } 20 } 21 close(pipe); 22 23 return 0.0+succ; 24} 25 26BEGIN{ 27 28 sum = 0; 29 count = 0; 30 for(i=1; i<=10; i++) 31 { 32 succ[i] = success_rate(sprintf("crossval%02d", i)); 33 count++; 34 sum+=succ[i]; 35 } 36 avg = sum/count; 37 38 var = 0; 39 for(i=1; i<=10; i++) 40 { 41 var += (succ[i]-avg)*(succ[i]-avg); 42 } 43 var = var/(count-1); 44 dev = sqrt(var); 45 46 print "Success rate: " avg " +/-" dev " (" args ")"; 47} 48