Плавать в CSV-файл с AWK - PullRequest
       2

Плавать в CSV-файл с AWK

0 голосов
/ 22 февраля 2019

У меня есть такой столбец в моем csv:

Last Mont Evolution (%)
0.00%
4.35%
4.17%
0.00%
7.29%
6.21%
4.10%
0.00%
-0.03%
2.78%
2.46%
-1.09%
19.18%
12.32%

Я хочу извлечь значения выше 4%, поэтому я делаю это:

awk '$1>4 {print $1}' file.csv | sort -r -n

Вывод:7.29% 6.21% 4.35% 4.17% 4.10%

Но где же значения 19.18% и 12.32%?

Можете ли вы мне помочь?

Ответы [ 2 ]

0 голосов
/ 22 февраля 2019

Вам не нужно делать -F%, вы можете позволить awk "конвертировать" ваши строки в числа:

awk '$0+0>4' file

Это выведет все проценты больше 4%.Если вы хотите, чтобы вывод был отсортирован, направьте трубку к sort

0 голосов
/ 22 февраля 2019

Из-за знака процента вы имеете дело со строками.Скажите awk и sort, чтобы использовать проценты в качестве разделителя, и все работает:

awk -F% '$1>4 {print $1}' file.csv | sort -t% -r -n

Вывод:

19.18
12.32
7.29
6.21
4.35
4.17
4.10
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...