How do I get the classes of all columns in a data frame? [duplicate]
Solution 1:
One option is to use lapply
and class
. For example:
> foo <- data.frame(c("a", "b"), c(1, 2))
> names(foo) <- c("SomeFactor", "SomeNumeric")
> lapply(foo, class)
$SomeFactor
[1] "factor"
$SomeNumeric
[1] "numeric"
Another option is str
:
> str(foo)
'data.frame': 2 obs. of 2 variables:
$ SomeFactor : Factor w/ 2 levels "a","b": 1 2
$ SomeNumeric: num 1 2
Solution 2:
You can simple make use of lapply
or sapply
builtin functions.
lapply
will return you a list
-
lapply(dataframe,class)
while sapply
will take the best possible return type ex. Vector etc -
sapply(dataframe,class)
Both the commands will return you all the column names with their respective class.
Solution 3:
Hello was looking for the same, and it could be also
unlist(lapply(mtcars,class))