R语言批量处理文件

本文介绍用R批量读取文件夹下文件,然后合并为数据框

R读取文件夹下文件转化为数据框

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 读入文件名
all.files = list.files(path = "yourpath",
full.name = TRUE,
pattern = ".csv")
# 读入数据
mylist = lapply(all.files,function(i) read_csv(i,locale = locale(encoding = "GB18030")))
# 合并为数据框
mydata = do.call('rbind',mylist)
head(mydata)
dim(mydata)
# 如DBA说,我不要NA,我要空
mydata[is.na(mydata)] = ""
# 输出txt
write.table(mydata,file="yourpath",
quote = FALSE,
row.names = FALSE,
sep = "\t",
fileEncoding = "UTF-8")

关于encoding

中文编码一般选 GB18030,这个应该是完全兼容GBK

hadley大神帮解决问题还是很开心的!

以后解决识别文件编码问题

喂他一颗糖