R 循环多个数据集中的列名以修复名称差异
我有多个数据集,它们的列结构相同,但行长度不同。当我去堆叠它们时,R 循环多个数据集中的列名以修复名称差异,r,R,我有多个数据集,它们的列结构相同,但行长度不同。当我去堆叠它们时,rbind偶尔会出现问题,因为一个文件的列名可能是大写的,而另一个文件的列名可能是小写的。我想在开始时运行一些东西,将所有内容转换为小写(因为它不区分大小写) 当我一次性执行以下操作时,转换工作正常。然而,我试图通过一个循环来实现这一点,却把事情搞砸了 这很有效 names(fmli3) <- tolower(names(fmli3)) names(fmli3)原始代码的问题在于df_qtr不是5个数据帧的列表。您可以检查
rbind
偶尔会出现问题,因为一个文件的列名可能是大写的,而另一个文件的列名可能是小写的。我想在开始时运行一些东西,将所有内容转换为小写(因为它不区分大小写)
当我一次性执行以下操作时,转换工作正常。然而,我试图通过一个循环来实现这一点,却把事情搞砸了
这很有效
names(fmli3) <- tolower(names(fmli3))
names(fmli3)原始代码的问题在于df_qtr
不是5个数据帧的列表。您可以检查长度(df\u qtr)
进行验证
使用以下语法将多个数据.frame
连接到列表中
df_qtr <- list( fmli1, fmli2, ...)
df_qtr可能重复的
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)
}
df_qtr <- list( fmli1, fmli2, ...)