4
我有例如在列名删除字符
Ind var1_1 var2_2 var3_1 var4_2.......var100_1
1 0 0 2 1 0
2 2 0 1 0 2
以下数据,我想在后面重命名,而不两个字符列如下
Ind var1 var2 var3 var4.......var100
1 0 0 2 1 0
2 2 0 1 0 2
我有例如在列名删除字符
Ind var1_1 var2_2 var3_1 var4_2.......var100_1
1 0 0 2 1 0
2 2 0 1 0 2
以下数据,我想在后面重命名,而不两个字符列如下
Ind var1 var2 var3 var4.......var100
1 0 0 2 1 0
2 2 0 1 0 2
我们可以使用sub
。我们匹配字符串的末尾($
)后跟一个或多个数字(\\d+
)的模式_
,并替换为''
。
names(df) <- sub('_\\d+$', '', names(df))
或者作为@大卫Arenburg提到的,它可以是_
后的一个或多个的任何字符(.*
)的(其将匹配图案,例如var1_1
,var1_d3533
等)
names(df) sub("_.*", "", df)
或者我们使用paste
(@ jogo的评论)
names(df) <- c("Ind", paste0("var", 1:100))
谢谢akrun。它工作正常。 – Shima
您可以在这种情况下执行'sub(“_。*”,“”,x)'这个例子可能是 –
或'names(df)< - c(“Ind”,paste0(“var”,1:100)) ' – jogo