Я хочу найти среднее количество осадков в любых трех штатах, скажем, CA, TX и AX за определенный месяц с января по декабрь. Данный входной файл разделен TAB SPACES
и имеет формат city name, the state , and then average rainfall amounts from January through December, and then an annual average for all months
. ЭГ может выглядеть
AVOCA PA 30 2.10 2.15 2.55 2.97 3.65 3.98 3.79 3.32 3.31 2.79 3.06 2.51 36.18
BAKERSFIELD CA 30 0.86 1.06 1.04 0.57 0.20 0.10 0.01 0.09 0.17 0.29 0.70 0.63 5.72
Я хочу сделать следующее: «Получить сумму среднего количества осадков, скажем, за определенный месяц февраля, скажем, за n лет, а затем найти его среднее значение для штатов CA, TX и AX.
Я написал приведенный ниже скрипт в awk, чтобы сделать то же самое, но он не дает ожидаемого результата.
/^CA$/ {CA++; CA_SUM+= $5} # ^CA$ - Regular Expression to match the word CA only
/^TX$/ {TX++; TX_SUM+= $5} # ^TX$ - Regular Expression to match the word TX only
/^AX$/ {AX++; AX_SUM+= $5} # ^AX$ - Regular Expression to match the word AX only
END {
CA_avg = CA_SUM/CA;
TX_avg = TX_SUM/TX;
AX_avg = AX_SUM/AX;
printf("CA Rainfall: %5.2f",CA_avg);
printf("CA Rainfall: %5.2f",TX_avg);
printf("CA Rainfall: %5.2f",AX_avg);
}
Я вызываю программу с помощью команды awk 'FS="\t"'-f awk1.awk rainfall.txt
и не вижу результата.
Вопрос: Куда я скатываюсь? Любые предложения и измененный код будут оценены