blob: aaf77a31abffec2db272710ba2398691e74280c6 [file] [log] [blame]
% File src/library/base/man/Extract.factor.Rd
% Part of the R package, https://www.R-project.org
% Copyright 1995-2010 R Core Team
% Distributed under GPL 2 or later
\name{Extract.factor}
\title{Extract or Replace Parts of a Factor}
\alias{[.factor}
\alias{[<-.factor}
\alias{[[.factor}
\alias{[[<-.factor}
\description{
Extract or replace subsets of factors.
}
\usage{
\method{[}{factor}(x, \dots, drop = FALSE)
\method{[[}{factor}(x, \dots)
\method{[}{factor}(x, \dots) <- value
\method{[[}{factor}(x, \dots) <- value
}
\arguments{
\item{x}{a factor}
\item{\dots}{a specification of indices -- see \code{\link{Extract}}.}
\item{drop}{logical. If true, unused levels are dropped.}
\item{value}{character: a set of levels. Factor values are coerced to
character.}
}
\value{
A factor with the same set of levels as \code{x} unless \code{drop = TRUE}.
}
\details{
When unused levels are dropped the ordering of the remaining levels is
preserved.
If \code{value} is not in \code{levels(x)}, a missing value is
assigned with a warning.
Any \code{\link{contrasts}} assigned to the factor are preserved
unless \code{drop = TRUE}.
The \code{[[} method supports argument \code{exact}.
}
\seealso{
\code{\link{factor}}, \code{\link{Extract}}.
}
\examples{
## following example(factor)
(ff <- factor(substring("statistics", 1:10, 1:10), levels = letters))
ff[, drop = TRUE]
factor(letters[7:10])[2:3, drop = TRUE]
}
\keyword{category}