在我的数据框中,许多列名以“.y”结尾,如示例所示:
dat <- data.frame(x1=sample(c(0:1)), id=sample(10), av1.y = sample(10) , av2.y = sample(10) , av3.y = sample(10),av4.y=sample(10))
dat
我想去掉所有以 .y 结尾的列名的最后两个字符,并保持其他字符不变,以便拥有这样的数据框:
colnames(dat) <- c("x1","id","av1","av2","av3","av4")
dat
如何在不重新输入所有列名的情况下实现这一点?我找到了一种对单个字符串执行此操作的方法,但不知道如何在一系列字符串上重复执行此操作:
library(stringi)
stri_sub("av3.y",1,3)