如何修复R语言中‘could not find function "%>%<-"’错误?
问题解决:R脚本报错"%>%<-"未找到函数
报错原因
你写的animal_df %>% hamster_dt <- data.frame("hamster", 2.879301)是完全错误的语法:
- 管道符
%>%的作用是把左侧数据传递给右侧的函数,不能和赋值操作<-这样混用,R中不存在%>%<-这个函数,因此触发报错。 - 这行代码和前面的
animal_df没有逻辑关联,完全不需要加管道前缀。
修正后的完整代码
# 加载包 library(dplyr) # 设置工作目录 setwd('C:/Users/...') # 导入csv文件 animal_df <- read.csv('pets.csv', header=TRUE, sep = ',') # 统计每个size对应的物种数量 # 1. 创建hamster的数据框并命名列 hamster_dt <- data.frame('hamster', 2.879301) names(hamster_dt) <- c('pet', 'length') # 2. 合并数据、创建size列 all_pets <- bind_rows(animal_df, hamster_dt) %>% mutate(size = ceiling(length)) # 查看数据结构 str(all_pets) # 3. 统计每个size的物种数量 sp_per_size <- table(all_pets$size) View(sp_per_size) write.csv(sp_per_size, "C:/Users/.../sp_per_size.csv", row.names=TRUE)
关键修改说明
- 移除了错误的
animal_df %>%前缀,独立创建hamster_dt数据框 - 调整管道链结构,让
bind_rows和mutate形成连贯操作(str()作为单独的查看语句更合理,无需插入管道链) - 修正代码缩进,让逻辑层级更清晰
内容的提问来源于stack exchange,提问作者Fiona22
相关产品推荐
相关产品推荐

