2016-07-09 14 views
1

Ich habe 7300 * .csv-Dateien in einem temporären Verzeichnis. Ich möchte diese in ein Zip-Archiv in R komprimieren. Ich verwende den folgenden Code, der FOREVER übernimmt. Gibt es eine Möglichkeit, dies schneller zu machen, ohne R zu beenden und das WinZip-Programm zu verwenden?Zipping sehr viele Dateien in r

fileListing  = list.files(pattern = '*.csv') 
outZipFileName = gsub('.zip', '_TZflts.zip', zipName) 
sapply(seq_along(fileListing),function(ii) zip(outZipFileName, fileListing[ii])) 

Ein weiteres Problem besteht darin, dass der Zip-Prozess im Code Tonnen Müll Dateien laicht neben der Zip-Datei und sein csv Inhalt.

Vielen Dank.

BSL

+0

Sie nicht durch die Dateien in einer Schleife müssen .. Sie sie alle in einem 'zip' Anruf hinzufügen. Oh eigentlich, habe ich missverstanden .. wollen Sie eine separate Zip-Dateien für jeden CSV oder alle CSV in einem Zip? – user20650

+0

Nein. Ein Zip-Archiv mit 7300 CSV-Dateien. –

Antwort

3

Sie müssen nicht durch die Dateien in einer Schleife, werden gezippt zip kann einen Vektor der Dateien nehmen: dies sollte die Dinge beschleunigen. Von ?zip

Dateien ist: 'Ein Zeichenvektor von aufgezeichneten Dateipfaden enthalten sein.'

Beispiel

# write some files to be zipped 
for(i in 1:10) write.csv(mtcars, paste0("SOtemp", i, ".csv")) 

# zip 
zip("SOzip", files=list.files(pattern="SOtemp\\d")) 

# remove files from this example 
# file.remove(c("SOzip.zip", list.files(pattern="SOtemp\\d"))) 
+0

Versuchte es mit Ihrem Befehl. Erhaltene Warnmeldung, 'running command' "zip" -r9X ', gefolgt von einer Auflistung aller 7300 CSV-Dateien. Es wurde keine Zip-Datei erstellt. –

+0

hat das kleine Beispiel in meiner Antwort funktioniert? Wenn nicht, http://stackoverflow.com/questions/29129681/create-zip-file-error-running-command-had-status-127 ist wahrscheinlich nützlich (obwohl ich es sofort nach der Installation von rtools versuchen würde, vor dem Festlegen von Pfaden etc) – user20650

+0

okay, ich habe es gerade auf einer Windows-Partition versucht und ich habe die gleiche Nachricht wie Sie. Ich folgte dann den Schritten (einschließlich der Festlegung des Pfades) in [HBat's amswert] (http://stackoverflow.com/questions/29129681/create-zip-file-error-running-command-had-status-127?answertab=votes # tab-top) und es funktioniert jetzt. – user20650