参考内容
r读取文件夹下的所有csv文件_R语言读取文件夹下多个文件并进行合并数据生成总数据文件:
https://blog.csdn.net/weixin_36078669/article/details/112964979
- 设定工作目录: setwd()
- 将文件夹下所有文件名输入给1个变量: list.files()
- 构建获取文件的路径: paste函数
- 读取文件个数,以确定循环次数: length()
- 依次读取文件: for循环
- 循环操作
- 输出文件
library(rtracklayer)
gtf = import("E:\\lab\\gencode.v29.annotation.gtf")
gtf = as.data.frame(gtf)
colnames(gtf)
head(gtf)
gtf_gene <- gtf[which(gtf$type == "gene"), ]
library(xlsx)
library(splatter)
setwd("E:\\lab")
all_file <- list.files()
n <- length(all_file)
fp <- paste("E:\\lab", all_file, sep = "\\")
for (i in 1:n){
name_each_cell <- read.csv(file = fp[i],header = TRUE)
name_each_cell <- merge(name_each_cell, gtf_gene, by.x = "X", by.y = "gene_id")
name_each_cell <- name_each_cell[,c(18,1,2,3,4,5,6,7)]
write.xlsx(name_each_cell, sheetName = all_file[i], append = TRUE, file = "E:\\lab\\files.xlsx")
}