x[i] x[i, j, ...] x[i, j, ... , drop=TRUE] x[[i]] x[[i, j, ...]] x$name
x
is set to the value of the right hand side
of the assignment.
These operators are generic. You can write methods to handle subsetting of specific classes of data.
The [[
operator requires all relevant subscripts be supplied.
With the [
operator a comma separated blank indicates that all
entries in that dimension are selected.
When operating on a list, the [[
operator gives the specified
element of the list while the [
operator returns a list with
the specified element(s) in it.
list
, array
, matrix
.x <- 1:12; m <- matrix(1:6,nr=2); li <- list(pi=pi, e = exp(1)) x[10] # the tenth element of x m[1,] # the first row of matrix m m[1, , drop = FALSE] # is a 1-row matrix li[[1]] # the first element of list li y <- list(1,2,a=4,5) y[c(3,4)] # a list containing elements 3 and 4 of y y$a # the element of y named a