在 R 中按顺序重命名多个变量



我需要重命名数据集中的数百个变量,我正在寻找最有效的方法。 导入原始数据时,SAS 会生成通用变量名称,如"VarX",而在 R 中,它只是"VX"。 我的公司正在从 SAS 迁移到 R,旧的 SAS 代码看起来像这样rename var23-var150=NRx1-NRx128;这会将"var23"重命名为"NRx1",然后将"var24"重命名为"NRx2",依此类推。 这在 SAS 中是非常有效的速记。 我知道我可以使用类似names(data)[x:y] = c("NRx1","NRx"2,etc)的东西从 x 列读取到 y 列,在此过程中重命名每个变量。 这意味着我必须写出所有NRx变量,这感觉就像浪费时间。

NRx之后还有另一组变量,SAS代码看起来像这样rename var151-var278=TRx1-TRx128;。 总而言之,我必须重命名 250 个变量,我需要一种有效的方法来编写此代码。 我对 R 很陌生,所以任何提示和快捷方式都值得赞赏。 提前感谢您的帮助!

我认为您最初的方法工作得很好,但是与其键入所有新名称,不如创建新所需名称的简单向量:

names(data)[x:y] = paste0("NRx", 1:128)

您可以轻松修改"之间的内容,然后修改最终数字以满足您的需求。paste0中的0表示变量命名中没有空格。

最新更新