Estimates of the interquartile range for each row (column) in a matrix.
rowIQRs(x, rows = NULL, cols = NULL, na.rm = FALSE, ...,
useNames = TRUE)colIQRs(x, rows = NULL, cols = NULL, na.rm = FALSE, ...,
useNames = TRUE)
iqr(x, idxs = NULL, na.rm = FALSE, ...)
Returns a numeric
vector
of
length N (K).
A vector
indicating subset of rows to
operate over. If NULL
, no subsetting is done.
A vector
indicating subset of columns to
operate over. If NULL
, no subsetting is done.
If TRUE
, missing values are
excluded.
Additional arguments passed to rowQuantiles
()
(colQuantiles()
).
If TRUE
(default), names
attributes of the result are set, otherwise not.
A vector
indicating subset of elements to
operate over. If NULL
, no subsetting is done.
Contrary to IQR
, which gives
an error if there are missing values and na.rm = FALSE
, iqr()
and its corresponding row and column-specific functions return
NA
_real_.
Henrik Bengtsson
See IQR
. See rowSds
().
set.seed(1)
x <- matrix(rnorm(50 * 40), nrow = 50, ncol = 40)
str(x)
# Row IQRs
q <- rowIQRs(x)
print(q)
q0 <- apply(x, MARGIN = 1, FUN = IQR)
stopifnot(all.equal(q0, q))
# Column IQRs
q <- colIQRs(x)
print(q)
q0 <- apply(x, MARGIN = 2, FUN = IQR)
stopifnot(all.equal(q0, q))
Run the code above in your browser using DataLab