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

如何使用R语言dplyr包永久重命名数据框列名?

解决dplyr rename()列名未永久修改的问题

dplyr的所有数据操作函数(包括rename())默认都不会直接修改原始数据框,而是返回一个修改后的新数据对象。你之前的代码只是在控制台输出了修改后的结果,但没把这个结果保存下来,所以原数据框physicians_table_raw的列名没变化。

有几种方法可以实现永久修改:

  • 覆盖原数据框(推荐,直接更新原对象)
    把修改后的结果重新赋值给原变量名,这样原数据框就会被替换成修改后的版本:

    physicians_table_raw <- physicians_table_raw %>%
      rename(
        year = Year,
        jurisdiction = Jurisdiction
      )
    

    之后再用View(physicians_table_raw)就能看到更新后的列名了。

  • 保存为新变量(保留原数据)
    如果不想改动原始数据,可以把修改后的结果存到新变量里,后续操作都用这个新变量:

    physicians_table_renamed <- physicians_table_raw %>%
      rename(
        year = Year,
        jurisdiction = Jurisdiction
      )
    
  • 用magrittr的%<>%管道赋值
    如果你习惯用管道语法直接修改原对象,可以加载magrittr包,用%<>%管道(它的作用是把管道右侧的结果重新赋值给左侧变量):

    library(magrittr)
    
    physicians_table_raw %<>%
      rename(
        year = Year,
        jurisdiction = Jurisdiction
      )
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 03:32:36