【R每日一贴】R构建因子?
测试开头
测试结尾
对于一个字符串向量或者整数值向量,当需要作为因子处理时,如何实现呢?R使用factor()函数,一般形式 f<- factor(v)
若是向量仅是一个子集而非全集,可以利用参数levels给出因子所有可能的水平,一般形式 f <-factor(v, levels)
什么是因子呢?R中,每一个分类变量的可能值称为一个水平,一个由水平值构成的向量就是因子。因子既符合R面向向量的特色,又广泛应用于R处理数据和建立统计模型。
关于因子的构建,举例说明如下。
例子一:向量是一个全集,输出因子,同时显示所有的水平值
> f <- factor(c("win", "lose", "tie", "tie", "win", "lose"))
> f
[1] win lose tie tie win lose
Levels: lose tie win
例子二:向量是一个子集
> wday <- c("Wed", "Mon", "Thu", "Thu", "Tue")
> level <- c("Mon", "Tue", "Wed", "Thu", "Fri")
> f1 <- factor(wday, levels = level)
> print(f1)
[1] Wed Mon Thu Thu Tue
Levels: Mon Tue Wed Thu Fri
说明:很多情况,不需要显示调用factor()函数。当R函数需要因子时,它通常自动将数据转换成因子。例如,table函数仅用于因子变量,它会自动地把输入转换成因子。举例说明如下。
> table(c("win", "lose", "tie", "tie", "win", "lose"))
lose tie win
2 2 2
> table(f)
f
lose tie win
2 2 2
【想一想】
1 R因子怎么理解?
2 如何构建R因子?
【做一做】
1 查阅factor函数帮助文档和应用实例,创建一个R因子?
2 找出至少5个处理R因子的函数?
【温馨话语】
见贤思齐焉,见不贤而内自省也。
我是陆勤,微信号:wangluqing360,你们在R路上的朋友,一起欣赏R路上的风景。PPV课R语言群:342699237,欢迎朋友们加入,共建最好的R社区。
赠人玫瑰,手有余香。若是觉得此文有用,欢迎分享给更多的人,让更多的人受用。
你若安好,便是晴天。若是朋友们有什么想法或建议,欢迎给我留言或者私信于我。
请关注“恒诺新知”微信公众号,感谢“R语言“,”数据那些事儿“,”老俊俊的生信笔记“,”冷🈚️思“,“珞珈R”,“生信星球”的支持!