2017-01-28 3 views
1

hat ich einen Vektor mit 30 Worten, die so genannten "Club"Schleife read.csv Dateien mit Mustern in Dateinamen

club <- pixid$ack1 

Next i 30 CSV-Dateien importieren möge. Jeder Dateiname enthält 1 der Wörter in "Club".

for (i in club){ 
DCM.[i] <- read.csv(list.files(pattern = "[i]")) 
} 

Allerdings erhalte ich folgende Fehlermeldung:

Error in file(file, "rt") : invalid 'description' argument.

Wie kann ich in all diesen Dateinamen aus dem Vektor lesen enthalten? Ich hoffe, das ist nur ein Syntaxfehler.

+1

Sie brauchen nicht '[]' Vielleicht hilft diese 'DCM <- Vektor ("Liste", Länge (Club)); for (i in seq_along (Club)) {DCM [[i]] <- read.csv (list.files (pattern = Club [i]))} 'davon aus, dass' 'Club' ist character' Klasse – akrun

+0

ja, ' Club 'ist ein Charakter. Leider gibt mir das immer noch: 'Fehler in Datei (Datei, "rt"): ungültiger' Beschreibung 'Argument' Fehler. – dudemcgregor

+0

Sie können ein kleines reproduzierbares Beispiel zur Verfügung stellen müssen. – akrun

Antwort

0

Es ist möglich, dass es mehrere Dateien für eine einzelne pattern im 'Club' vector gibt. Wir Schleife durch den ‚Club‘ von Mustern, listen Sie die Dateien auf der Grundlage dieses Muster list.files und anschließend eine Schleife durch die Dateinamen, und lesen Sie es mit read.csv

DCM <- lapply(club, function(x) lapply(list.files(pattern = x), 
       function(x) read.csv(x, stringsAsFactors=FALSE, row.names = NULL))) 

Die oben ist eine verschachtelte list enthält eine list von data.frame s für jedes Muster, das vom Club zur Verfügung gestellt wird.

+1

, die den Trick !! um daran zu arbeiten .. rette mich mucho tiempo Ich sollte Zeit damit verbringen, die anwendungsfunktionen zu lernen – dudemcgregor

Verwandte Themen