#!/bin/bash #this script sorts the results of all runs for all criteria using the criteria. i.e. all MRE graphs for COC81 are sorted using one of the MRE graphs. Criteria="AR MER MRE"; Datasets="coc81 nasa93"; gather() { for ((run = 1; run <= 4; run++)) do cd run$run for dataset in mwu_$1"_"$2"_"* do gawk 'BEGIN{FS=OFS=","} $1 !~ "key" {n++; array[n,1] = $1; array[n,2] = $4;} END{ if (n > 1) for (i=1; i<=n; i++) print array[i,1],array[i,2],Run; }' Run=$run $dataset; done cd .. done } sum() { gawk 'BEGIN{FS=","; OFS="\t";} { keyArray[$1] = 1; dataArray[$1,$3] += $2; } END{ k = 0; for (key in keyArray) { k++; sortedArray[k,0] = key; sortedArray[k,1] = dataArray[key,1]; sortedArray[k,2] = dataArray[key,2]; sortedArray[k,3] = dataArray[key,3]; sortedArray[k,4] = dataArray[key,4]; } #sorting the array using insertion sort for (i = 1; i <= k; i++) { tempKey = sortedArray[i,0]; tempValue1 = sortedArray[i,1]; tempValue2 = sortedArray[i,2]; tempValue3 = sortedArray[i,3]; tempValue4 = sortedArray[i,4]; j = i; while ((j > 1) && (sortedArray[j-1,1] > tempValue1)) { sortedArray[j,0] = sortedArray[j-1,0]; sortedArray[j,1] = sortedArray[j-1,1]; sortedArray[j,2] = sortedArray[j-1,2]; sortedArray[j,3] = sortedArray[j-1,3]; sortedArray[j,4] = sortedArray[j-1,4]; j = j - 1; } sortedArray[j,0] = tempKey; sortedArray[j,1] = tempValue1; sortedArray[j,2] = tempValue2; sortedArray[j,3] = tempValue3; sortedArray[j,4] = tempValue4; } for (i = 1; i <= k; i++) print i,sortedArray[i,0], sortedArray[i,1], sortedArray[i,2], sortedArray[i,3], sortedArray[i,4]; } ' $1; } plot() { gnuplot < $criterion"-"$dataset; plot; done done