Ich möchte in mehreren festen Breite Format TXT-Dateien in R lesen, aber ich muss sie zuerst entpacken.read_fwf funktioniert nicht beim Entpacken von Dateien
Da sie sehr große Dateien sind, möchte ich read_fwf
aus dem readr
Paket verwenden, weil es sehr schnell ist.
Wenn ich tun:
read_fwf(unz(zipfileName, fileName), fwf_widths(colWidths, col_names = colNames))
ich diesen Fehler Error in isOpen(con) : invalid connection
Allerdings, wenn ich tun:
read.table(unz(zipfileName, fileName))
ohne Breiten specfiying es in R
liest gerade fein. Irgendwelche Gedanken, warum das nicht mit read_fwf
funktioniert?
Ich habe Probleme, ein reproduzierbares Beispiel zu machen. Hier ist, was ich habe:
df <- data.frame(
rnorm(100),
rnorm(100)
)
write.table(df, "data.txt", row.names=F, col.names = F)
zip(zipfile = "data.zip", files = "data.txt")
colWidths <- rep(2, 100)
colNames <- c("thing1","thing2")
zipfileName <- "data.zip"
fileName <- "data.csv"
Ich sehe nur eine Spalte. Ich sehe auch nicht, dass Sie "zipfileName" –
@ 42-editierte Edits definiert haben, damit das Beispiel dem Problem entspricht. – Warner
Lesen Sie '? Unz' sorgfältiger. Insbesondere: '" Die 'Beschreibung' ist der vollständige Pfad zur Zip-Datei, mit der Erweiterung '.zip', falls erforderlich. "' –