2017-08-16 5 views
-1

Ich habe einen Vektor mit Zeichenketten getrennt durch mehrere Leerzeichen, ich möchte diesen Vektor in einen Datenrahmen konvertieren.Wie konvertiert man einen Vektor in einen Datenrahmen?

Der Vektor sieht wie folgt aus. Ich habe versucht, df <- read.table("table.txt", sep = " +") zu verwenden, wenn Sie die Datei zu lesen bekam aber einen Fehler invalid 'sep' value: must be one byte

v <- c("text2  54654656TEXT  Text text 11","text3  56TEXT  Text text 15") 
+1

'as.data.frame (v)' ... –

+3

Wenn man sich 'read.table', Ihr' sep = "+" 'Versuch war unnötig. Aus der Beschreibung des 'sep'-Arguments: * Wenn' sep = "" '(der Standardwert für read.table) ist das Trennzeichen 'Leerraum', dh ein oder mehrere Leerzeichen, Tabulatoren, Zeilenumbrüche oder Zeilenumbrüche. * – Gregor

+0

@ Hack-R und db- sorry mein Beispiel war nicht klar, das oben ist die einzige die erste Zeile der Daten, die ich habe und jedes Element im Vektor v muss in separaten Spalte sein in diesem Fall muss ich die Daten setzen im Beispiel in 3 Spalten in derselben Zeile. – Curious

Antwort

0

Sie können nicht mehr als ein Zeichen trennen. Deshalb schlage ich vor, die Datendatei vorzubereiten zunächst wie folgt aus:?

lines<-readLines("table.txt") 
oneSpace<-gsub("\\s+"," ",lines,fixed = F) 
writeLines(oneSpace,"tableOneSpace.txt") 
read.table("tableOneSpace.txt",sep = " ") 
Verwandte Themen