R 教程

浏览4610
更新时间2025-08-13

因子

因子用于对数据进行分类。以下是一些因子的例子:

  • 人口统计:男/女
  • 音乐:摇滚、流行、古典、爵士
  • 训练:力量、耐力

要创建一个因子,请使用 factor() 函数并将向量作为参数添加:

实例

# 创建因子
music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"))

# 打印因子
music_genre

结果:

[1] Jazz    Rock    Classic Classic Pop     Jazz    Rock    Jazz
Levels: Classic Jazz Pop Rock

从上面的例子可以看出,该因子有四个级别(类别):ClassicJazzPopRock

要仅打印级别,请使用 levels() 函数:

实例

music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"))

levels(music_genre)

结果:

[1] "Classic" "Jazz"    "Pop"     "Rock"   

您也可以通过在 factor() 函数中添加 levels 参数来设置级别:

实例

music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"), levels = c("Classic", "Jazz", "Pop", "Rock", "Other"))

levels(music_genre)

结果:

[1] "Classic" "Jazz"    "Pop"     "Rock"    "Other"

因子长度

使用 length() 函数找出因子中有多少项:

实例

music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"))

length(music_genre)

结果:

[1] 8

访问因子

要访问因子中的项,请使用 [] 括号引用索引号:

实例

访问第三项:

music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"))

music_genre[3]

结果:

[1] Classic
Levels: Classic Jazz Pop Rock

更改项目值

要更改特定项的值,请引用索引号:

实例

更改第三项的值:

music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"))

music_genre[3] <- "Pop"

music_genre[3]

结果:

[1] Pop
Levels: Classic Jazz Pop Rock

请注意,如果尚未在因子中指定特定项目的值,则无法更改该值。以下示例将产生错误:

实例

尝试将第三个项目("Classic")的值更改为不存在/未预定义的项目("Opera"):

music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"))

music_genre[3] <- "Opera"

music_genre[3]

结果:

Warning message:
In `[<-.factor`(`*tmp*`, 3, value = "Opera") :
  invalid factor level, NA generated

但是,如果您已经在 levels 参数中指定了它,它将起作用:

实例

更改第三项的值:

music_genre <- factor(c("Jazz", "Rock", "Classic", "Classic", "Pop", "Jazz", "Rock", "Jazz"), levels = c("Classic", "Jazz", "Pop", "Rock", "Opera"))

music_genre[3] <- "Opera"

music_genre[3]

结果:

[1] Opera
Levels: Classic Jazz Pop Rock Opera

相关视频

更多

免费

phpStudy极速入门视频教程
初级phpStudy极速入门视频教程

535505次学习

收藏

免费

Midjourney基础课程
初级Midjourney基础课程

13301次学习

收藏

免费

极客学院Git使用视频教程
初级极客学院Git使用视频教程

48272次学习

收藏

免费

尚观shell视频教程
高级尚观shell视频教程

16824次学习

收藏

免费

尚观Linux入门视频教程
初级尚观Linux入门视频教程

46541次学习

收藏
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号