Импортировать несколько CSV в R, используя цикл For - PullRequest
0 голосов
/ 25 ноября 2018

Привет, я новичок в R и пытаюсь понять, где мой сценарий работает неправильно.Я пытаюсь импортировать только те CSV-файлы, которые попадают между двумя датами Sdate & Fdate , введенными в верхней части скрипта.Скрипт работает без ошибок, но извлекает только последний файл в списке.Я нахожусь на 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 голосов
/ 25 ноября 2018

Проблема в том, что вы перезаписываете свою переменную каждый раз, когда ваш цикл.Итак, давайте изменим это.Вам необходимо добавить свои файлы в ваш фрейм данных.

Одним из решений является создание начального фрейма данных

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=",") }

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...