2016-07-04 30 views
4

Ich bin in Not. Ich habe ein Korpus, das ich in eine gemeinsame Sprache umgewandelt habe, aber einige der Wörter wurden nicht korrekt in Englisch konvertiert. Daher hat mein Korpus nicht-ASCII-Zeichen wie "(U + 00F8)".Was ist der beste Weg, um Nicht-ASCII-Zeichen aus einem Text Corpus zu entfernen, wenn Sie Quanteda in R verwenden?

Ich verwende Quanteda und ich habe meinen Text mit diesem Code importiert:

EUCorpus <- corpus(textfile(file="/Users/RiohBurke/Documents/RStudio/PROJECT/*.txt"), encodingFrom = "UTF-8-BOM") 

Mein Korpus besteht aus 166 Dokumenten. Nachdem ich die Dokumente auf diese Weise in R importiert habe, was wäre der beste Weg für mich, diese Nicht-ASCII-Zeichen loszuwerden?

+0

Sie können dies mit iconv tun. Siehe diese Antwort für Details: http://stackoverflow.com/a/9935242/5151349 – mkt

Antwort

4

Versuche:

texts(EUCorpus) <- iconv(texts(EUCorpus), from = "UTF-8", to = "ASCII", sub = "") 

Dieser wandelt die ASCII-Codierung, keine nicht-translatierbaren Zeichen ersetzt (die nicht in dem 0-127 ASCII-Bereich) zum Nichts.

+0

ist 'gsub ('[^ - ~]', '', x)' eine mögliche Vorgehensweise, die schneller sein könnte? Ich bin im Urlaub, also kein R, um mich selbst zu testen. –

+1

Danke Leute, beide Lösungen funktionierten großartig – Ricardo

+0

Wie können wir von UTF-8 in ASCII konvertieren? Ein entsprechendes Dokument wäre hilfreich. Vielen Dank! –