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

R语言:如何批量将数据框列名改为Cluster_1至Cluster_n(含循环及优解)

批量重命名数据框列名:数字前缀转Cluster_前缀

最优方案:无需循环的向量式操作

R是向量型语言,批量操作直接用向量赋值最简洁高效,完全不需要循环:

# 直接生成新列名并替换整个列名向量
names(df) <- paste0("Cluster_", names(df))

paste0会自动把"Cluster_"和每个原列名(数字字符串)拼接,一步完成所有列的重命名,比循环快得多,也更易读。

循环实现的正确写法

如果一定要用循环,有两种可行的方式:

方式1:遍历列名

遍历每个原列名,找到对应位置替换:

for (i in colnames(df)) {
  names(df)[names(df) == i] <- paste0("Cluster_", i)
}

方式2:遍历列索引(更高效)

直接按列的位置索引赋值,避免列名匹配的开销,适合列数较多的场景:

for (idx in seq_along(df)) {
  names(df)[idx] <- paste0("Cluster_", idx)
}

这种方式不管原列名是不是严格的连续数字,都能按列的顺序生成Cluster_1到Cluster_n的命名。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 05:55:18