Można użyć języka programowania R .
Oto szybki i brudny skrypt R:
#! /usr/bin/env Rscript
d<-scan("stdin", quiet=TRUE)
cat(min(d), max(d), median(d), mean(d), sep="\n")
Uwaga: "stdin"
w scan
której znajduje się specjalna nazwa pliku do odczytu ze standardowego wejścia (to znaczy z potoków lub przekierowań).
Teraz możesz przekierować swoje dane przez stdin do skryptu R.
$ cat datafile
1
2
4
$ ./mmmm.r < datafile
1
4
2
2.333333
Działa również dla zmiennoprzecinkowych:
$ cat datafile2
1.1
2.2
4.4
$ ./mmmm.r < datafile2
1.1
4.4
2.2
2.566667
Jeśli nie chcesz pisać pliku skryptu R, możesz wywołać prawdziwą jednowierszową (z podziałką tylko dla czytelności) w wierszu poleceń, używając Rscript
:
$ Rscript -e 'd<-scan("stdin", quiet=TRUE)' \
-e 'cat(min(d), max(d), median(d), mean(d), sep="\n")' < datafile
1
4
2
2.333333
Przeczytaj dokładne instrukcje R na stronie http://cran.r-project.org/manuals.html .
Niestety pełne odniesienie jest dostępne tylko w formacie PDF. Innym sposobem na odczytanie referencji jest wpisanie ?topicname
pytania w interaktywnej sesji R.
Dla kompletności: istnieje polecenie R, które wyświetla wszystkie potrzebne wartości i więcej. Niestety w przyjaznym dla człowieka formacie, który jest trudny do analizowania programowo.
> summary(c(1,2,4))
Min. 1st Qu. Median Mean 3rd Qu. Max.
1.000 1.500 2.000 2.333 3.000 4.000