2017-04-24 1 views
0

Ich versuche, For-Schleife zu verwenden, um den ersten Teil jedes Textes zu entfernen und exportieren Sie den überarbeiteten Text mit write.table, aber in meinem Ordner habe ich festgestellt, write.table wird eine Reihe von generieren neue Dateien anstelle der ursprünglichen. Kann mir jemand zeigen, wie man vorhandene Dateien überschreibt?Wie überschreiben vorhandenen. Txt-Dateien nach For-Schleife

for(i in 1:length(file.names)){ 
    text.v <- scan(file.names[i], what="character", encoding = "UTF-8") 
    novel.v <- paste(text.v, collapse=" ") 
    word.v <- gsub(".*</Header> ","", novel.v) 
    write.table(paste(word.v,collapse = " "), paste(file.names[i],".txt",sep=""), row.names=FALSE, col.names=FALSE, quote=FALSE) 
} 
+0

Wie Code neue Dateien generieren? Speichern Sie nicht den gleichen Namen? –

+0

Ich würde alle Dateien als Liste lesen, dann ein 'gsub' machen und sie schließlich schreiben. –

Antwort

1

Es scheint mir, dass Sie versuchen, Ihre Dateien mit zu schreiben 'zwei' Erweiterungen, weil Sie sie wie filenameWithExtension lesen und dann filenameWithExtension.txt schreiben. Wenn das der Fall ist, die Lösung ist es nur diese paste(file.names[i],".txt",sep="") zu diesem file.names[i] ändern.

Wenn ich falsch liege, sollten Sie uns ein Beispiel für den Inhalt von file.name zeigen.

0

in den Code können Sie die aktuelle Datei i mit

file.remove(paste0(file.names[i],".txt")) 

Und nach

write.table(paste(word.v,collapse = " "), paste(file.names[i],".txt",sep=""), row.names=FALSE, col.names=FALSE, quote=FALSE) 

Überprüfen Sie, ob Sie den Code entfernen, wenn die objetc paste(word.v,collapse = " ") korrekt Ihre origonal Datei ersetzen. Ich benutze, um diese Art von Schleifen zu machen, und ich muss mehrmals überprüfen die Struktur meiner neuen geschriebenen Datei (Anführungszeichen, NA's, Delims, usw.)

+0

Danke, aber Ihr Code hat nicht funktioniert, ich habe immer noch die Originaldateien im Ordner. – fccog

Verwandte Themen