r - as.character() 应用于 data.frame 的单个元素与 data.frame 的整个“行”
问题描述
我有一个这样的data.frame:
df<-data.frame(x=c(1,2,3),y=c('b','a','c'))
如果我输入命令:
as.character(df$y[1])
或者as.character(df[1,2])
我最终得到了输出"b"
如果我输入命令:
as.character(df[1,])
我最终得到了输出"1" "2"
我知道对于上面列出的最终命令,R 给了我字符“b”的因子级别
但是,为什么前两个命令不这样做呢?
当我进入时,R 实际上在“内部”做什么as.character()
?不管是什么,我认为这是不同输出的原因。
提前致谢
解决方案
我不确定 as.character() 的内部结构。但也许这可以解决问题:
df<-data.frame(x=c(1,2,3), y=c('b','a','c'), stringsAsFactors = FALSE)
然后as.character(df[1,])
会返回[1] "1" "b"
. 这 [1] "1" "b"
不是 "b"
因为 df[1,] 返回整行。
希望这可以帮助。此致
推荐阅读
- python - 如何使用pandas python获取数据框中每列的最大长度
- vmware - 如何在云服务器上挂载 ISO、将文件复制到访客并调用脚本
- java - 键绑定API。输入不知道
- java - Spring Data Jpa 为查询添加前缀
- python - 在 Django 视图中设置 cookie 的最佳方法?
- email - 在 Outlook 2013 中的移动设备或桌面上显示时事通讯电子邮件
- wordpress - CentOS7 Apache - 提供页面,但基本 url 提供内部地址并且无法访问
- c - 读取 C 中引号之间有空格的用户输入字符串并保留引号
- c# - 项目背景的复选框颜色
- ember.js - Ember:如何判断 peekAll 是否返回任何模型?