- 引言
- 1、数据名称
- 1.1有规律的文件名
- 1.2无规律的
- 2、相对路径
- 3、完整代码例子
- 总结
在R语言入门——数据快速读取与查看(含实例代码和参数讲解)中介绍了几种R语言读取外部数据的函数和方法。但是在日常的学习或者工作中经常会遇到批量读取数据进行整合。为了提高大家的工作效率,今天介绍R语言中进行批量读取数据的技术。并最终给出主要的代码。
1、数据名称 1.1有规律的文件名如:
1、data1、data2... ... datan
2、A、B、C、D ... ...
等等。我们可以借助paste0、paste、rep和seq函数去生成。
例如:
paste0("data", 1:50)
[1] "data1" "data2" "data3" "data4" "data5" "data6" "data7" "data8"
[9] "data9" "data10" "data11" "data12" "data13" "data14" "data15" "data16"
[17] "data17" "data18" "data19" "data20" "data21" "data22" "data23" "data24"
[25] "data25" "data26" "data27" "data28" "data29" "data30" "data31" "data32"
[33] "data33" "data34" "data35" "data36" "data37" "data38" "data39" "data40"
[41] "data41" "data42" "data43" "data44" "data45" "data46" "data47" "data48"
[49] "data49" "data50"
1.2无规律的
这时候就需要额外的工具了。具体资源给到大家:
1、获取当前文件夹的所有文件名.bat
相同的资源考虑到有的人没有积分发了一份不用积分下载的版本。
2、获取当前文件夹的文件名.rar
在读取数据的时候为了保证程序的可复现性,我们最好使用相对路径。
比如:
".\data\Data1.csv"
读取当前文件夹data文件中的Data1.csv中的数据。
3、完整代码例子以批量读取excel为例。
# install.packages("readxl")
library(readxl) # 载入读取excel的包
# 名称读取
Mname <- read.table("name.txt")[,1] # 本文1.2获取的文件名
m <- length(Mname) # 本文1.2获取的文件名长度
# 数据合并
Data <- c()
for(k in 1:m){
tmp <- read_excel(paste0(".\", Mname[k]), sheet = "数据段1")
Data <- rbind(Data, tmp)
}
write.table(Data, "数据.txt", sep = "t", append = T, row.names = F)
总结
最后希望可以帮助大家学习使用R语言。水平有限发现错误还望及时评论区指正,您的意见和批评是我不断前进的动力。



