x
, this function constructs a frequency table
associated to appropriate intervals covering the range of x
.
binning(x, y, breaks, nbins)
x
is a one-dimentional matrix, this is equivalent to a vector.
x
),
assigning the division points of the axis, or the axes in the matrix case.
It must not include Inf
,-Inf
or NA
s, and it must span the whole range of
the x
points.
If breaks
is not given, it is computed by dividing the range of x
into nbins
intervals for each of the axes.
x
axis (in the vector case),
or a vector of two elements with the number of intervals on each
axes of x
(in the matrix case).
If nbins
is not given, a value is computed as round(log(length(x))/log(2)+1)
or using a similar expression in the matrix case.
x
of the midpoints of the bins excluding those with 0 frequecies,
its associated matrix x.freq
of frequencies, the coodinateds of the
midpoints
, the division points, and the complete vector of observed
frequencies freq.table
(including the 0 frequencies), and the vector
breaks
of division points.
In the matrix case, the returned value is a list with the following
elements: a two-dimensional matrix x
with the coordinates of the
midpoints of the two-dimensional bins excluding those with 0 frequecies,
its associated matrix x.freq
of frequencies, the coordinates of the
midpoints
, the matrix breaks
of division points, and the observed
frequencies freq.table
in full tabular form.
sm
library when the sample size is
large, to allow handling of datasets of essentially unlimited size.
Specifically, it is used by sm.density
, sm.regression
, sm.ancova
,
sm.binomial
and sm.poisson
.
sm
, sm.density
, sm.regression
, sm.binomial
, sm.poisson
, cut
, table
# example of 1-d use
x <- rnorm(1000)
xb <- binning(x)
xb <- binning(x, breaks=seq(-4,4,by=0.5))
# example of 2-d use
x <- rnorm(1000)
y <- 2*x + 0.5*rnorm(1000)
x <- cbind(x, y)
xb<- binning(x, nbins=12)
Run the code above in your browser using DataLab