Rev 24809 | Rev 27928 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed
\name{as.data.frame}\alias{as.data.frame}\alias{is.data.frame}\alias{as.data.frame.AsIs}\alias{as.data.frame.character}\alias{as.data.frame.complex}\alias{as.data.frame.data.frame}\alias{as.data.frame.default}\alias{as.data.frame.factor}\alias{as.data.frame.integer}\alias{as.data.frame.list}\alias{as.data.frame.logical}\alias{as.data.frame.matrix}\alias{as.data.frame.model.matrix}\alias{as.data.frame.numeric}\alias{as.data.frame.ordered}\alias{as.data.frame.ts}\alias{as.data.frame.vector}\title{Coerce to a Data Frame}\description{Functions to check if an object is a data frame, or coerce it if possible.}\usage{as.data.frame(x, row.names = NULL, optional = FALSE)is.data.frame(x)}\arguments{\item{x}{any \R object.}\item{row.names}{\code{NULL} or a character vector giving the rownames for the data frame. Missing values are not allowed.}\item{optional}{logical. If \code{TRUE}, setting row names andconverting column names (to syntactic names) is optional.}}\value{\code{as.data.frame} returns a data frame, normally with all row names\code{""} if \code{optional = TRUE}.\code{is.data.frame} returns \code{TRUE} if its argument is a dataframe (that is, has \code{"data.frame"} amongst its classes)and \code{FALSE} otherwise.}\details{\code{as.data.frame} is a generic function with many methods, andusers and packages can supply further methods.If a list is supplied, each element is converted to a column in thedata frame. Similarly, each column of a matrix is converted separately.This can be overridden if the object has a class which hasa method for \code{as.data.frame}: two examples arematrices of class \code{"\link{model.matrix}"} (which are included as asingle column) and list objects of class \code{"\link{POSIXlt}"} which arecoerced to class \code{"\link{POSIXct}"}Character variables are converted to factor columns unless protectedby \code{\link{I}}.If a data frame is supplied, all classes preceding \code{"data.frame"}are stripped, and the row names are changed if that argument is supplied.If \code{row.names = NULL}, row names are constructed from the namesor dimnames of \code{x}, otherwise are the integer sequencestarting at one. Few of the methods check for duplicated row names.}\note{In versions of \R prior to 1.4.0 logical columns were converted tofactors (as in S3 but not S4).}\references{Chambers, J. M. (1992)\emph{Data for models.}Chapter 3 of \emph{Statistical Models in S}eds J. M. Chambers and T. J. Hastie, Wadsworth \& Brooks/Cole.}\seealso{\code{\link{data.frame}}}\keyword{classes}\keyword{methods}