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

如何在dplyr的across函数.names参数中使用函数修改列名

解决方法

只需调整第二个mutate(across(...))的.names参数,在参数的glue表达式内直接调用sub()函数处理{.col}变量,删除不需要的_greater4后缀即可,修改后的完整代码如下:

library(dplyr)
head(iris, 5) %>% 
  select(1,2) %>% 
  mutate(across(contains("Sepal"), ~ifelse(. > 4, 1, 0), .names = "{.col}_greater4")) %>% 
  mutate(across(contains("4"), ~ifelse(. < 50, 1, 0), .names = "{sub('_greater4', '', .col)}_greater50"))

运行后输出的列名将符合需求,最后两列会变成Sepal.Length_greater50、Sepal.Width_greater50。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 08:15:01