Как сделать имена столбцов строчными для нескольких фреймов данных?

У меня есть набор фреймов данных с одинаковыми заголовками столбцов, за исключением того, что некоторые имена столбцов в верхнем регистре, а некоторые в нижнем регистре. Я хочу преобразовать все имена столбцов в нижний регистр, чтобы я мог сделать один большой кадр данных всего.

Кажется, я не могу заставить colnames()работать в любом цикле или применять то, что я пишу. С:

#create dfs
df1<-data.frame("A" = 1:10, "B" = 2:11)
df2<-data.frame("a" = 3:12, "b" = 4:13)
df3<-data.frame("a" = 5:14, "b" = 6:15)
#I have many more dfs in my actual data

#make list of dfs, define lowercasing function, apply across df list
dfs<-ls(pattern = "df")
lowercols<-function(df){colnames(get(df))<-tolower(colnames(get(df)))}
lapply(dfs, lowercols)

я получаю следующую ошибку:

Error in colnames(get(df)) <- tolower(colnames(get(df))) : 
  could not find function "get<-"

Как мне изменить все мои кадры данных, чтобы они имели имена столбцов в нижнем регистре?

7
задан William Gunn 16 April 2012 в 19:03
поделиться