R Language
интроспекция
Поиск…
Функции для изучения переменных
Часто в R
вам понадобятся сведения об объекте или переменной, с которыми вы работаете. Это может быть полезно при чтении чужого кода или даже вашего собственного, особенно при использовании новых для вас пакетов.
Предположим, что мы создаем переменную a
:
a <- matrix(1:9, 3, 3)
Какой тип данных это? Вы можете узнать
> class(a)
[1] "matrix"
Это матрица, поэтому над ней будут работать матричные операции:
> a %*% t(a)
[,1] [,2] [,3]
[1,] 66 78 90
[2,] 78 93 108
[3,] 90 108 126
Каковы размеры ? a
> dim(a)
[1] 3 3
> nrow(a)
[1] 3
> ncol(a)
[2] 3
Другими полезными функциями, которые работают для разных типов данных, являются head
, tail
и str
:
> head(a, 1)
[,1] [,2] [,3]
[1,] 1 4 7
> tail(a, 1)
[,1] [,2] [,3]
[3,] 3 6 9
> str(a)
int [1:3, 1:3] 1 2 3 4 5 6 7 8 9
Они гораздо полезнее для больших объектов (например, больших наборов данных). str
также отлично подходит для изучения вложенности списков. Теперь измените a
так:
a <- c(a)
Класс остается прежним?
> class(a)
[1] "integer"
Нет, a
не матрица. Я не получу хороший ответ, если я попрошу размеры сейчас:
> dim(a)
NULL
Вместо этого я могу задать длину:
> length(a)
[1] 9
Что теперь:
> class(a * 1.0)
[1] "numeric"
Часто вы можете работать с data.frames
:
a <- as.data.frame(a)
names(a) <- c("var1", "var2", "var3")
См. Имена переменных:
> names(a)
[1] "var1" "var2" "var3"
Эти функции могут помочь во многих отношениях при использовании R