Dear fellow fedora users,
If I have a data file called 15.dat with the following content:
$ cat 15.dat
1
3
1
0
2
And I want to find min, quartile 1, median, quartile 3 and maximum (Five number summary)
We can use datamash like
$ cat 15.dat | datamash min 1 q1 1 median 1 q3 1 max 1
0 1 1.5 2.75 6
Q3 is reported as 2.75 but if we split the data file in half the number is 3.
> fivenumfunction (x, na.rm = TRUE){xna <- is.na(x)if (any(xna)) {if (na.rm)x <- x[!xna]else return(rep.int(NA, 5))}x <- sort(x)n <- length(x)if (n == 0)rep.int(NA, 5)else {n4 <- floor((n + 3)/2)/2d <- c(1, n4, (n + 1)/2, n + 1 - n4, n)0.5 * (x[floor(d)] + x[ceiling(d)])}}