使用For循环将多个csv导入R

时间:2018-11-25 00:24:45

标签: r csv for-loop import

嗨,我是R的新手,正在努力了解我的脚本出了什么问题。我正在尝试仅导入介于两个日期之间的csv文件日期  和日期输入到脚本顶部附近。该脚本运行良好,没有任何错误,但仅提取了列表中的最后一个文件。我在Windows 10上,所有文件都在本地计算机上。任何帮助将不胜感激。谢谢

Sdate <- as.Date("2018-10-01")
Fdate <- as.Date("2018-10-30")
Ndate = as.character.Date(seq.Date(from = as.Date(Sdate), to = as.Date(Fdate), 
                                   by = "days"), format ="%Y%m%d")

for (i in Ndate){
  MyData <- read.csv(
    file=paste('D:/Data/Merlin Data/Merlin BDD/T1/BDD_',i,'_T1.csv',sep = ""), 
    header=TRUE, sep=",")
}

1 个答案:

答案 0 :(得分:0)

问题在于您每次循环时都会覆盖变量。因此,让我们对其进行更改。您需要将文件追加到数据框。

一种解决方案是创建一个初始数据框

MyData <- read.csv(file='D:/Data/Merlin Data/Merlin BDD/T1/BDD_20181001_T1.csv', header=TRUE, sep=",")

,然后通过串联c()将数据附加到此数据中。由于您已经阅读了第一个文件,因此将Sdate设置为Sdate<-as.Date("2018-10-02") 您应该能够使用以下命令读取数据:

for (i in :Ndate){ MyData <- read.csv(file=paste('D:/Data/Merlin Data/Merlin BDD/T1/BDD_',i,'_T1.csv',sep = ""), header=TRUE, sep=",") }