我有多个列结构相同但行长不同的数据集。当我去堆叠它们时,rbind
偶尔会出现问题,因为一个文件的列名可能大写,而另一个文件可能小写。我想在开头运行一些东西,将所有内容转换为小写(因为这不区分大小写)。
当我执行以下一次性操作时,转换工作正常。但是,我试图通过一个循环来解决这个问题。
此作品
names(fmli3) <- tolower(names(fmli3))
不起作用
df_qtr <- c(fmli1, fmli2, fmli3, fmli4, fmli5)
for (i in 1:length(df_qtr)){
names(df_qtr[[i]]) <- tolower(names(df_qtr[[i]]))
}
提前感谢您的帮助。
修改 感谢JWilliman在cross post(以及Shea指出)的回答,以下作品:
dfs <- c("fmli1", "fmli2", "fmli3", "fmli4", "fmli5")
for(df in dfs) {
df.tmp <- get(df)
names(df.tmp) <- tolower(names(df.tmp))
assign(df, df.tmp)
}
答案 0 :(得分:0)
原始代码的问题是fstat
不是5 df_qtr
的列表。您可以查看data.frame
进行验证。
使用以下语法将多个length(df_qtr)
连接到data.frame
。
list