НачатьНачать бесплатно

Уровни фактора

Получив новый набор данных, вы нередко обнаружите, что он содержит факторы с определёнными уровнями. Иногда эти названия стоит изменить — для большей ясности или по другим причинам. В R для этого используется функция levels():

levels(factor_vector) <- c("name1", "name2",...)

Хороший пример — необработанные данные из опроса. В анкетах часто встречается вопрос о поле респондента. Для простоты здесь записаны только две категории: "M" и "F". (В реальных опросах категорий обычно больше, но в любом случае для хранения категориальных данных используется фактор.)

survey_vector <- c("M", "F", "F", "M", "M")

Обозначения "M" и "F" удобны при сборе данных с помощью бумажной анкеты, однако при анализе они могут вызвать путаницу. Поэтому в процессе анализа часто бывает нужно заменить уровни фактора на "Male" и "Female" вместо "M" и "F".

Важно: порядок, в котором вы задаёте уровни, имеет значение. Если вызвать levels(factor_survey_vector), вы увидите вывод [1] "F" "M". Если при создании вектора уровни не заданы явно, R присвоит их автоматически — в алфавитном порядке. Чтобы правильно сопоставить "F" с "Female" и "M" с "Male", уровни нужно задать как c("Female", "Male") — именно в таком порядке.

Это упражнение является частью курса

Введение в R

Посмотреть курс

Инструкции к упражнению

  • Изучите код, который создаёт факторный вектор из survey_vector. В следующем шаге вам понадобится factor_survey_vector.
  • Измените уровни фактора factor_survey_vector на c("Female", "Male"). Обратите внимание на порядок элементов вектора.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Code to build factor_survey_vector
survey_vector <- c("M", "F", "F", "M", "M")
factor_survey_vector <- factor(survey_vector)

# Specify the levels of factor_survey_vector
levels(factor_survey_vector) <-

factor_survey_vector
Редактировать и запускать код