R语言文件管理
1. 批量提取文件夹名称到数据框
将第一级子文件夹目录批量读取并输入到数据框的某一列
读取目标文件夹下所有子文件夹目录read all subfolders under folders
reference1
#set recursive=FALSE to only show the first level of subfolders
#如果只想读取第一季子文件夹目录,则将recursive设置为FALSE
dirs <- list.dirs("path/to/folder/", recursive=FALSE)
n <- length(dirs)
创建数据框df并重命名每一列create a dataframe df and rename the columns
#你的目标文件有多少就设置多少行
df= as.data.frame(matrix(nrow=n,ncol=1))
#重命名你的列
colnames(df) <- c("subfolders")
循环所有子文件夹并提取子文件夹名loop through all folders and extract folder names
reference2
for (i in 1:n) {
#basename在这里是整个dir path的最后一个文件or文件夹名
df$subfolders[i] <- basename(dirs[i])
}
将最终的数据框文件输出为excel文件write dataframe to excel file
writexl::write_xlsx(df, "D:/df.xlsx")
2. 根据某列合并文件
分别读取俩文件
data1 <- readxl::read_excel("path to data1.xlsx")
data2 <- readxl::read_excel("path to data2.xlsx")
根据某列合并文件
data <- merge(data1,data2,by="某列名")
输出合并文件
writexl::write_xlsx(data, "path to data.xlsx")
The end