aboutsummaryrefslogtreecommitdiffstats
path: root/median.1
blob: f4756afea160591e846b9cb85af5a84b5f16cf16 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
.TH MEDIAN 1 MEDIAN
.SH NAME
median - Calculate the median values for a set of groups
.SH SYNOPSIS
.B median
.SH DESCRIPTION
.B median
takes the first blank space-separated column values and
the remainder as keys. It will then print the median
for each key. Lines with the same key form a group.
.PP
.B median
outputs the median value for each key, no order of the
output lines are prescribed. No order is prescribed for
the input lines.
.PP
Lines without a blank space are parsed as having the empty
string as the key, for lines with a blank space, the first
blank space is parsed as part of the key.
.PP
For groups with an even number of elements, if the mean of
the middle two values are used as the median if all values
in the group are numerical, otherwise the lower value is
used as the median.
.SH EXAMPLES
.nf
$ cat <<EOF | median
\-10
2
4
3
50
EOF
3
.fi
.PP
.nf
$ cat <<EOF | median
\+003  c
\&.001  a
\-002  b
\+001  c
\-001  b
\+002  c
EOF
\&.001  a
\-001.5  b
\+002  c
.fi
.SH RATIONALE
Combining
.BR sort (1),
.BR sed (1),
.BR wc (1),
.BR expr (1)
to do this is too much work to do on a regular basis.
.SH "SEE ALSO"
.BR sort (1),
.BR expr (1),
.BR sets (1)