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

如何在管道操作中使用rename_with()将向量值批量设置为数据框列名

用rename_with批量替换列名的实现方法

你的错误写法存在两处问题:

  • 管道已经将上游的head(iris)作为rename_with的第一个.data参数传入,不需要重复传入iris
  • rename_with要求第二个.fn参数为函数(或purrr公式风格的匿名函数),不能直接传入列名向量

正确实现代码

newcolnames <- c("one", "two", "three", "four", "five")

head(iris) %>% 
  rename_with(.fn = ~ newcolnames, .cols = everything())

参数说明

  • .cols = everything():指定选中所有列进行重命名,如果你只需要修改部分列,可替换为dplyr支持的任意列选择语法
  • .fn = ~ newcolnames:purrr风格的匿名函数,返回的新列名会按顺序和选中的列一一对应,需要保证newcolnames的长度和选中列的数量完全一致

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 06:24:02