df[,c(4,12)] <- lapply(df[,c(4,12)],as.factor)
比如说这段代码.我将 4 12两列转给factor格式,使用lapply就可以,但是如果使用sapply或者apply进行该操作就会转换成character,但是如果反过来 将指定列转换成numerica格式 lapply和sapply就都可以,有大神解释下原理吗
|
楼主: falseform
|
1449
2
[学习分享] 求教关于将df的指定列转换类型的问题 |
|
已卖:422份资源 硕士生 30%
-
|
回帖推荐jiangbeilu 发表于2楼 查看完整内容 因为sapply和apply将你的结果转化成了矩阵,而矩阵的特点是所有元素必须是相同类型,当别的类型中有字符型时,所有元素被强制转化成了字符型。
lapply是转成list,再复制给data.frame就没有这个限制了。
| ||||||||
|
|
| ||
加好友,备注cda京ICP备16021002号-2 京B2-20170662号
京公网安备 11010802022788号
论坛法律顾问:王进律师
知识产权保护声明
免责及隐私声明


