使用dplyr::filter运行代码报错:‘必须是逻辑向量,而非数字5’
R代码报错分析与解决
错误根源
你编写的filter函数代码中,将小数0.5错误地写成了0,5。在R语法里,逗号是函数参数的分隔符,这就导致filter函数接收到两个独立参数:第一个是逻辑判断dose == 0,第二个是数值5。而filter要求每个筛选条件都必须是逻辑向量,数值5不符合要求,因此触发报错。
修正后的代码
把逗号替换为小数点即可正常运行:
data("ToothGrowth") View(ToothGrowth) filtered_tg <- filter(ToothGrowth, dose == 0.5)
效果说明
修正后,代码会正确筛选出ToothGrowth数据集中dose取值为0.5的所有观测行,赋值给filtered_tg变量。
内容的提问来源于stack exchange,提问作者Shreyas Akode
相关产品推荐
相关产品推荐

