Вы можете сделать это с R , что может быть немного излишним ...
РЕДАКТИРОВАТЬ 2: [Упс, похоже, что кто-то еще ударил Rscript, когда я перепечатывал это.] Я нашел более простой способ. Установленный с R должен быть Rscript, который предназначен для того, что вы пытаетесь сделать. Например, если у меня есть файл bar
со списком чисел, по одному на строку:
cat bar | Rscript -e 'summary (as.numeric (readLines ("stdin")))'
Передаст эти числа в R и запустит summary
команду R в строках, возвращая что-то вроде:
Min. 1st Qu. Median Mean 3rd Qu. Max.
1.00 2.25 3.50 3.50 4.75 6.00
Вы также можете сделать что-то вроде:
script -e 'quantile (as.numeric (readLines ("stdin")), probs=c(0.025, 0.5, 0.975))'
чтобы получить квантили. И вы могли бы явно отрубить первую строку вывода (которая содержит метки) примерно так:
cat bar | Rscript -e 'summary (as.numeric (readLines ("stdin")))' | tail -n +2
Я настоятельно рекомендую сначала делать то, что вы хотите в Interactive R, чтобы убедиться, что вы правильно указали команду. При попытке этого я пропустил закрывающую скобку, и Rscript ничего не возвращает - ни сообщения об ошибке, ни результата, просто ничего.
(Для записи файловая строка содержит:
1
2
3
4
5
6