2013-09-10 4 views
0

Я хотел бы вычислить среднее значение определенного столбца в файле CSV с разделителем столбцов «;». Как это сделать с помощью инструментов командной строки Linux, таких как awk?Как вычислить среднее значение столбца в файле CSV?

Пример:

foo;1;test 
bar;3;hello 

Среднее значение столбца 2 является 2.

+1

Почему это проголосовало? –

+1

@ Raze2dust Я бы предположил из-за легкости, с которой на этот вопрос можно получить быстрый поиск в вашей любимой поисковой системе. – dimo414

ответ

5

Быстрый поиск «bash average» появился как первый результат: Compute simple average using AWK

прибрано для случая использования, это:

$ cat /tmp/yourdata | awk -F';' '{sum+=$2; ++n} END { print "Avg: "sum"/"n"="sum/n }' 
Avg: 4/2=2 
2

Давайте подумаем, что у вас есть файл csv 1.csv. команда должна выглядеть следующим образом:

cat 1.txt | awk -F';' '{sum+=$2} END {print sum/NR}' 
Смежные вопросы