1. Learn
  2. /
  3. 课程
  4. /
  5. R 入门

Connected

道练习

因子水平

当您拿到一个数据集时,常会发现其中包含带有特定水平的因子。不过,出于清晰或其他原因,您有时需要修改这些水平的名称。R 提供了 levels() 函数来完成这一点:

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

一个常见示例是问卷原始数据。几乎每份问卷都会询问受访者的性别。这里为简化起见,只记录了两个类别,"M" 和 "F"。(实际做调查通常需要更多类别;无论如何,您都会用因子来存储这类分类数据。)

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

在纸笔收集数据时,用 "M" 和 "F" 作缩写很方便,但在分析阶段可能会引起歧义。这时,您通常希望将因子水平从 "M"、"F" 改为更清楚的 "Male" 和 "Female"。

注意:指定水平的顺序很重要。如果您输入 levels(factor_survey_vector),会看到输出为 [1] "F" "M"。如果创建向量时未显式指定因子水平,R 会按字母顺序自动分配。为了将 "F" 正确映射到 "Female"、"M" 映射到 "Male",应按此顺序将水平设置为 c("Female", "Male")。

说明

100 XP
  • 查看从 survey_vector 构建因子向量的代码。下一步请使用 factor_survey_vector。
  • 将 factor_survey_vector 的因子水平改为 c("Female", "Male")。注意向量元素的顺序。