使用for循环更改多个数据框的列名,并将数据框加载到列表中

Jak*_*ake 1 iteration for-loop r list dataframe

我正在尝试在 for 循环中更改所有数据框中的变量名称。数据的任何示例是:

df1 <- data.frame(
  Number = c(45,62,27,34,37,55,40),
  Day = c("Mon", "Tues", "Wed", "Thurs", "Fri", "Sat", "Sun"))
df2 <- data.frame(
  Number = c(15,20,32,21,17,18,13),
  Day = c("Mon", "Tues", "Wed", "Thurs", "Fri", "Sat", "Sun"))
df3 <- data.frame(
  Number = c(12,32,22,14,16,21,30),
  Day = c("Mon", "Tues", "Wed", "Thurs", "Fri", "Sat", "Sun")

L <- list(df1,df2,df3)
Run Code Online (Sandbox Code Playgroud)

我目前的尝试是:

for(i in L){
colnames(L) <- c("NewName1", "NewName2")
}
Run Code Online (Sandbox Code Playgroud)

哪个不起作用,我不明白为什么它不起作用。请让我知道是否有人可以指导我朝着正确的方向前进。

Jil*_*ina 5

L <- lapply(L, function(x){
  colnames(x) <- c("NewName1", "NewName2")
  x
} )
Run Code Online (Sandbox Code Playgroud)