compute data frequencies - Maple Help

Home : Support : Online Help : Statistics : Statistics Package : Data Manipulation : Statistics/TallyInto

Statistics[TallyInto] - compute data frequencies

 Calling Sequence TallyInto(X, R, options)

Parameters

 X - R - range or list(range) or Vector; grouping pattern options - (optional) equation(s) of the form option=value where option is one of weights, ignore, bins or output; specify options for the TallyInto function.

Description

 • The TallyInto function groups together elements from X which belong to the same data range and computes their frequencies. (See also Statistics[Tally]).
 • The first parameter X is the data set.
 • The second argument R is used to specify how the data should be grouped. The value of R can be a range or a list of ranges, or it can be a Vector (or other 1-dimensional rtable) of numbers.
 If ranges are specified, then for each range, TallyInto will compute the number of data items in the corresponding interval. The intervals are not assumed to be disjoint, so any data item may belong to more than one interval (or none of them). Each interval can be divided into a number of equal-sized subintervals using the bins option (see below). Alternatively, you can pass default as the value for R, which tells TallyInto to use the interval between the smallest and the largest data items.
 If R is a Vector of numbers x0 < x1 < ... < xn, then instead Maple uses the $n$ intervals [x0, x1), [x1, x2), ..., [x(n-1), xn]. The bins option is ignored in this case.
 If a given range is subdivided into $n$ subranges, then each subrange except for the rightmost one corresponds to an interval that is closed on the left and open on the right; the rightmost interval is closed on both sides. That is, a value that is equal to a boundary value will be part of the subrange on its right (except if it is at the right of the whole range). Similarly, if R is a Vector, boundary points will be put into the subinterval on the right (except the rightmost point will be put into the last subinterval). Note, however, that both the boundary points and the data points will be converted to floating-point, and this could conceivably cause the floating-point versions of data points to lie on the other side of boundary points than the exact versions do.

Notes

 • The underlying computation is done in floating-point; therefore, all data provided must have type[realcons] and all returned frequencies are floating-point, even if the problem is specified with exact values.  For more information about numeric computation in the Statistics package, see the Statistics[Computation] help page.
 • Note that TallyInto will return an error if it is required to split an infinite interval (i.e. if the value of bins is different from 1 and at least one boundary of an interval is infinite).

Examples

 > $\mathrm{with}\left(\mathrm{Statistics}\right):$
 > $A:=\mathrm{Array}\left(\left[\mathrm{seq}\left(\frac{1}{i},i=1..100\right)\right]\right)$
 ${A}{:=}\left[\begin{array}{c}{\mathrm{1 .. 100}}{\mathrm{Array}}\\ {\mathrm{Data Type:}}{\mathrm{anything}}\\ {\mathrm{Storage:}}{\mathrm{rectangular}}\\ {\mathrm{Order:}}{\mathrm{Fortran_order}}\end{array}\right]$ (1)
 > $\mathrm{TallyInto}\left(A,\mathrm{default},\mathrm{bins}=5\right)$
 $\left[{0.0100000000000000}{..}{0.208000000000000}{=}{96}{,}{0.208000000000000}{..}{0.406000000000000}{=}{2}{,}{0.406000000000000}{..}{0.604000000000000}{=}{1}{,}{0.604000000000000}{..}{0.802000000000000}{=}{0}{,}{0.802000000000000}{..}{1.}{=}{1}\right]$ (2)
 > $\mathrm{TallyInto}\left(A,\mathrm{default},\mathrm{bins}=3\right)$
 $\left[{0.0100000000000000}{..}{0.340000000000000}{=}{98}{,}{0.340000000000000}{..}{0.670000000000000}{=}{1}{,}{0.670000000000000}{..}{1.}{=}{1}\right]$ (3)
 > $W:=\mathrm{Array}\left(\left[\mathrm{seq}\left(i,i=1..100\right)\right]\right)$
 ${W}{:=}\left[\begin{array}{c}{\mathrm{1 .. 100}}{\mathrm{Array}}\\ {\mathrm{Data Type:}}{\mathrm{anything}}\\ {\mathrm{Storage:}}{\mathrm{rectangular}}\\ {\mathrm{Order:}}{\mathrm{Fortran_order}}\end{array}\right]$ (4)
 > $\mathrm{TallyInto}\left(A,\mathrm{default},\mathrm{bins}=3,\mathrm{weights}=W\right)$
 $\left[{0.0100000000000000}{..}{0.340000000000000}{=}{5047.}{,}{0.340000000000000}{..}{0.670000000000000}{=}{2.}{,}{0.670000000000000}{..}{1.}{=}{1.}\right]$ (5)
 > $\mathrm{FrequencyTable}\left(A,\mathrm{bins}=3,\mathrm{weights}=W\right)$
 $\left[\begin{array}{ccccc}{0.0100000000000000}{..}{0.340000000000000}& {5047.}& {99.9405940594059}& {5047.}& {99.9405940594059}\\ {0.340000000000000}{..}{0.670000000000000}& {2.}& {0.0396039603960396}& {5049.}& {99.9801980198020}\\ {0.670000000000000}{..}{1.}& {1.}& {0.0198019801980198}& {5050.}& {100.}\end{array}\right]$ (6)
 > $\mathrm{TallyInto}\left(A,\left[-1..0.5,-0.5..0.5,-1..1\right],\mathrm{bins}=3\right)$
 $\left[{-}{1.}{..}{-}{0.500000000000000}{=}{0}{,}{-}{0.500000000000000}{..}{0.}{=}{0}{,}{0.}{..}{0.500000000000000}{=}{99}{,}{-}{0.500000000000000}{..}{-}{0.166666666666667}{=}{0}{,}{-}{0.166666666666667}{..}{0.166666666666667}{=}{94}{,}{0.166666666666667}{..}{0.500000000000000}{=}{5}{,}{-}{1.}{..}{-}{0.333333333333333}{=}{0}{,}{-}{0.333333333333333}{..}{0.333333333333333}{=}{97}{,}{0.333333333333333}{..}{1.}{=}{3}\right]$ (7)
 > $\mathrm{TallyInto}\left(A,\left[-1..0.5,-0.5..0.5,-1..1\right],\mathrm{bins}=3,\mathrm{weights}=W\right)$
 $\left[{-}{1.}{..}{-}{0.500000000000000}{=}{0.}{,}{-}{0.500000000000000}{..}{0.}{=}{0.}{,}{0.}{..}{0.500000000000000}{=}{5049.}{,}{-}{0.500000000000000}{..}{-}{0.166666666666667}{=}{0.}{,}{-}{0.166666666666667}{..}{0.166666666666667}{=}{5029.}{,}{0.166666666666667}{..}{0.500000000000000}{=}{20.}{,}{-}{1.}{..}{-}{0.333333333333333}{=}{0.}{,}{-}{0.333333333333333}{..}{0.333333333333333}{=}{5044.}{,}{0.333333333333333}{..}{1.}{=}{6.}\right]$ (8)

An example with explicitly specified bounds.

 > $A:=\mathrm{Sample}\left(\mathrm{Exponential}\left(1\right),{10}^{5}\right):$
 > $\mathrm{PowersOf2}:=\mathrm{Vector}\left(\left[\mathrm{seq}\left({2}^{i},i=-4..4\right)\right]\right)$
 ${\mathrm{PowersOf2}}{:=}\left[\begin{array}{c}\frac{{1}}{{16}}\\ \frac{{1}}{{8}}\\ \frac{{1}}{{4}}\\ \frac{{1}}{{2}}\\ {1}\\ {2}\\ {4}\\ {8}\\ {16}\end{array}\right]$ (9)
 > $\mathrm{TallyInto}\left(A,\mathrm{PowersOf2}\right)$
 $\left[{0.0625000000000000}{..}{0.125000000000000}{=}{5661}{,}{0.125000000000000}{..}{0.250000000000000}{=}{10415}{,}{0.250000000000000}{..}{0.500000000000000}{=}{17142}{,}{0.500000000000000}{..}{1.}{=}{23932}{,}{1.}{..}{2.}{=}{23206}{,}{2.}{..}{4.}{=}{11604}{,}{4.}{..}{8.}{=}{1850}{,}{8.}{..}{16.}{=}{36}\right]$ (10)

Compare this histogram:

 > $\mathrm{Histogram}\left(A,'\mathrm{binbounds}'=\mathrm{PowersOf2}\right)$