35
Jaki jest łatwy sposób, aby dowiedzieć się, jaka klasa ma każda kolumna w ramce danych?Jak uzyskać klasy wszystkich kolumn w ramce danych?
Jaki jest łatwy sposób, aby dowiedzieć się, jaka klasa ma każda kolumna w ramce danych?Jak uzyskać klasy wszystkich kolumn w ramce danych?
Jedną z opcji jest użycie lapply
i class
. Na przykład:
> foo <- data.frame(c("a", "b"), c(1, 2))
> names(foo) <- c("SomeFactor", "SomeNumeric")
> lapply(foo, class)
$SomeFactor
[1] "factor"
$SomeNumeric
[1] "numeric"
Inną opcją jest str
:
> str(foo)
'data.frame': 2 obs. of 2 variables:
$ SomeFactor : Factor w/ 2 levels "a","b": 1 2
$ SomeNumeric: num 1 2
także 'sapply (foo, klasa)' 'class' – MYaseen208
Od zwraca wektor znaków _all_ klas obiekt dziedziczy, wyjście 'sapply (foo, class)' może być listą, a nie zawsze wektorem znaków, jak większość ludzi by się spodziewała. Co może być trochę niebezpieczne ... "Lapply" jest o wiele bezpieczniejsze. – flodel
np. Typy POSIX ... –