You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从R语言dataframe中按列名删除多列?

如何在R中按列名删除dataframe的指定列?

正确实现方法

方法1:使用dplyr包的select函数

确保已加载dplyr包,执行以下代码即可删除目标列:

library(dplyr)
economics_df <- economics_df %>% select(-c(`Series Code`, `Country Code`))

如果之前尝试失败,大概率是未提前加载dplyr包,导致管道符%>%和select函数无法被识别。

方法2:使用基础R语法

基础R中删除列时,无需给列名额外添加反引号包裹(你之前的错误是把反引号写进了字符串内容里),正确写法有两种:

# 方式A:用反引号直接引用带空格的列名
economics_df <- economics_df[, -c(`Series Code`, `Country Code`)]

# 方式B:通过列名字符串匹配删除
economics_df <- economics_df[, -which(names(economics_df) %in% c("Series Code", "Country Code"))]

你之前的写法economics_df[-c("Series Code", "Country Code")]错误在于,把列名的反引号作为了字符串的一部分,而实际列名本身是Series Code(不带外层反引号),导致R无法匹配到对应列。

验证结果

执行删除操作后,可通过names(economics_df)查看剩余列名,确认Series Code和Country Code已被移除。

内容的提问来源于stack exchange,提问作者Joe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 22:45:32