> Моя.Таблица <– data.frame(Успеваемость,Студенты, Студентки)
> Моя.Таблица
Успеваемость Студенты Студентки
1 Отличники 2 3
2 Хорошисты 5 7
3 Троечники 10 14
4 Двоечники 2 1
# узнаем является ли Моя.Таблица таблицей:
> is.data.frame(Моя.Таблица)
# по-русски: таблица.ли(Моя.Таблица)
[1] TRUE
# по-русски ответ: ИСТИНА, то есть этот объект является таблицей
Далее проверим структуру данных Моя.Таблица с помощью следующей функции:
> str(Моя.Таблица)
# по-русски: структура(Моя.Таблица)
'data.frame': 4 obs. of 3 variables:
$ Успеваемость: Factor w/ 4 levels "Двоечники","Отличники",..: 2 4 3 1
$ Студенты : num 2 5 10 2
$ Студентки : num 3 7 14 1
# по-русски: 'data.frame'– таблица
# 4 obs. of 3 variables – 4 наблюдения из 3 переменных
# знак $ обозначет переменные, включенные в таблицу
# Factor w/ 4 levels – фактор из 4 уровней
# num – количественные данные
Отдельный элемент таблицы можно извлечь, обозначив его положение (номер строки и номер столбца) в квадратных скобках:
> Моя.Таблица[3,1]
[1] Троечники
Levels: Двоечники Отличники Троечники Хорошисты
Внизу из текстового элемента Моя.Таблица есть следующая строка: «Levels: Двоечники Отличники Троечники Хорошисты». Levels в переводе на русский язык означает Уровни. Так называемые «Уровни» (Levels) присваиваются факторам. Фактор – это векторный объект, кодирующий категориальные данные (классы), в состав которых входят как номинальные, так и порядковые данные. Номинальные данные – это качественные данные, которые отражают условные коды количественно не измеряемых категорий, которые также не подлежат ранжированию или упорядочиванию. В качестве примера номинальных данных можно привести индексы отделений связи, поскольку они служат только для их идентификации. По отношению к номинальным данным возможны только операции «равенство-неравенство».
В отличие от номинальных порядковые данные могут быть ранжированы как в порядке убывания, так и увеличения какого-либо их качества. Но в отличие от обычных количественных данных, которые можно выразить в конкретных единицах и к которым можно применить широкий круг алгебраических операций, к порядковым данным можно применить лишь операции «равенство-неравенство», а также «больше-меньше». Порядковые данные используются в том случае, когда порядок ранжирования элементов по какому-то критерию важен, а вот количественные различия между различными рангами этих элементов не поддаются точной оценке.
Например, такие ответы респондентов на вопрос социолога, как: «согласен», «частично согласен», «нет могу сказать, согласен или не согласен», «частично не согласен», «не согласен», – можно ранжировать по степени их согласия или степени их несогласия, в то время как количественную разницу между вариантами этих ответов трудно оценить в каких-то конкретных единицах. Следовательно, эти данные являются порядковыми или ранжируемыми. Впрочем, иногда порядковым данным могут присваиваться какие-то условные порядковые числа, но и в этом случае количественная разница между различными рангами одной и той же последовательности носит весьма условный характер. Например, порядковыми данными являются пятибалльные оценки знаний учащихся, поскольку они не могут быть сгенерированы методом измерения в конкретных единицах, а получены методом достаточно субъективного оценивания.
Созданная нами переменная Успеваемость относится к числу ранжируемых, но по умолчанию уровни фактора в R присваиваются текстовому вектору в алфавитном порядке. Поскольку переменная Успеваемость является порядковой, то такая градация в этом случае не подходит. Поэтому сначала проверим тип данных переменной Успеваемость, а затем присвоим значение различных уровней фактора в порядке возрастания успеваемости с помощью следующей команды:
> class(Успеваемость)
[1] "character"
# тип данных – текстовый
> Успеваемость <– factor(Успеваемость, order=TRUE, levels=c('Двоечники', 'Троечники', 'Хорошисты', 'Отличники'))
# превращает вектор Успеваемость в упорядоченный фактор
# число уровней фактора задается при помощи аргумента levels
> Успеваемость
[1] Отличники Хорошисты Троечники Двоечники
# уровни фактора в порядке их возрастания
Levels: Двоечники < Троечники < Хорошисты < Отличники
> class(Успеваемость)
[1] "ordered" "factor"
# тип данных – упорядоченный фактор
Список в R представляет собой упорядоченный набор объектов с различными типами данных. В результате под одним своим именем списки могут включать векторы, матрицы, таблицы и другие списки. Список можно создать при помощи функции list():
> Мой.Список <– list(Моя.Таблица, Успеваемость, Матрица1,Матрица2)
# по-русски: Мой.Список <– список(Моя.Таблица, Успеваемость, Матрица1,Матрица2)
> Мой.Список
[[1]]