R中筛选数据绘箱线图报错:object 'Year' not found 求解
问题解决:R中筛选年份子集绘制箱线图报错
错误原因
你写的myData[Year == 2023]里的Year未指定所属数据框,R会在全局环境中查找该变量,而非从myData中读取,因此报错。不需要转换导入的数据,只需修正子集筛选的写法即可。
可行解决方案
方法一:通过数据框索引指定列
boxplot(Tenants ~ Building, data = myData[myData$Year == 2023, ])注意必须加逗号
,,否则会仅返回匹配条件的列而非行子集,加逗号才会保留所有列的符合条件行。方法二:使用
subset()函数(更直观)boxplot(Tenants ~ Building, data = subset(myData, Year == 2023))subset()函数内部会自动识别数据框内的列名,无需额外添加数据框前缀。方法三:借助tidyverse工具(dplyr包)
先加载dplyr包,再筛选子集绘图:library(dplyr) myData_2023 <- myData %>% filter(Year == 2023) boxplot(Tenants ~ Building, data = myData_2023)
内容的提问来源于stack exchange,提问作者Tobias Brenner
相关产品推荐
相关产品推荐

