R语言 为什么不使用select或colnames更改列名?

ax6ht2ek  于 2023-04-03  发布在  其他
关注(0)|答案(1)|浏览(152)

我尝试复制数据框中的列。接下来我尝试在下面的代码中重命名列名,尽管我没有成功。

library(dplyr)

d <- data.frame(red=1:3, green=4:6, yellow=7:9)

for (q in 1:3) {
            
  d$color <- select(d, q)
  
  colnames(d)[4] <- "newcolor"

}

首先,我尝试使用d$newcolor更改名称,但没有成功。接下来,我尝试使用colnames,但也没有成功。尽管这在前3列上工作正常。
我需要一个解决方案与识别列的数字,因为我需要它作为一个循环的一部分。(我实际上试图完成填充第4列每个循环与不同的源列)
多谢了!

ddrv8njm

ddrv8njm1#

试试这个:使用dplyr

library(dplyr)

d <- data.frame(red=1:3, green=4:6, yellow=7:9)
d%>%mutate(newcolor=yellow)

没有dplyr

d <- data.frame(red=1:3, green=4:6, yellow=7:9) 
d$somename<-d$yellow
colnames(d)[4]<-"newcolor"

就我有限的知识,dplyr有它自己的语法。我们不能总是把它和baseR结合起来。

相关问题