2016-04-27 5 views
0

Ich habe einen Ordner mit 199 Dateien (blah-001-a.exp-blah-199-a.exp)R - Wie liest man mehrere Dateien aus einem Ordner, konvertiert sie in xts und führt eine Datenanalyse für sie durch?

ich so etwas wie dies für jede Datei tun:

DF<- read.csv("D:/ebook/myfolder/blah-001-a.exp", sep=";") 
xts<-xts(x=DF[,-c(1,13)], order.by = as.Date(x=DF$DATA,format="%d.%m.%Y")) 
#other codes and report pdf file... 

ich so etwas Code versucht, aber es liest nur die Dateien, ohne trasform sie in xts:

folder <- "D:/ebook/myfolder/"  
filenames <- list.files(path=folder) 
for (i in 1:length(filenames)){ 
     assign(filenames[i], 
      read.csv(paste0(folder, filenames[i]),sep=';') 
    )} 

Könnten Sie mir einige Vorschläge geben? Vielen Dank im Voraus.

+0

Lesen Sie die Dateien in einer Liste ein. Siehe die folgende Antwort zu [Arbeiten mit Listen von data.frames] (http://stackoverflow.com/questions/17499013/how-do-i-make-a-list-of-data-frames/24376207#24376207). Es ist der Weg zu gehen. – lmo

Antwort

0
do.stuff <- function(file_in){ 
    DF <- read.csv(file_in, sep=";") 
    xts <-xts(x=DF[,-c(1,13)], order.by =as.Date(x=DF$DATA,format="%d.%m.%Y")) 
} 
the_files <- list.files('path/to/files',full.names = T) 
the_stuff <- lapply(1:length(the_files),function(i)do.stuff(the_files[[i]])) 
names(the_stuff) <- basename(the_files) 
+0

Großartig! ich danke dir sehr! –

+0

So funktionierte diese Antwort, richtig –

Verwandte Themen