使用特定功能,我希望合并成对的数据帧,用于 R 目录中的多个配对。我正在尝试编写一个“for循环”来为我完成这项工作,虽然相关问题(例如将多个 data.frames 合并到一个带有循环的 data.frame 中)很有帮助,但我正在努力为这个特定的示例循环调整利用。
我的数据框以“<em>_df1.csv”或“</em>_df2.csv”结尾。我希望合并到输出数据帧中的每一对在文件名(即 543_df1.csv 和 543_df2.csv)的存在处具有相同的编号。
我使用 list.files 命令为目录中的两种类型的文件中的每一种创建了一个字符串,如下所示:
df1files <- list.files(path="~/Desktop/combined files” pattern="*_df1.csv", full.names=T, recursive=FALSE)
df2files <- list.files(path="="~/Desktop/combined files ", pattern="*_df2.csv", full.names=T, recursive=FALSE)
为了合并每对数据帧,我要应用的函数和命令如下:
findRow <- function(dt, df) { min(which(df$datetime > dt )) }
rows <- sapply(df2$datetime, findRow, df=df1)
merged <- cbind(df2, df1[rows,])
我现在正试图将这些命令合并到一个 for 循环中,从以下几行开始,以防止我不得不手动合并这些对:
for(i in 1:length(df2files)){ ……
我还不是一个强大的 R 程序员,并且已经碰壁了,所以任何帮助都将不胜感激。