Ich habe eine Textdatei myfile.txt
die wie folgt aussieht:Wie liest man eine Textdatei mit Zeilentrennzeichen und speichert sie als numerischen Vektor?
10
20
30
40
Ich versuche es in R
zu laden mit:
nums <- read.csv('myfile.txt', header=FALSE);
Dies ist jedoch eine Liste zurückgibt. Was ich will, ist das Äquivalent von:
nums <- c(10, 20, 30, 40);
ich später Code haben, der folgende tut:
v = sprintf("%d", nums);
Dies funktioniert gut, wenn ich die Vektor-Version, aber wenn ich versuche, meine Daten zu laden von Datei, bekomme ich folgende Fehlermeldung:
Error in sprintf("%d", nums) : unsupported type
Execution halted
'sprintf ("% d", nums $ V1)' sollte funktionieren. 'nums' ist ein Datenrahmen und kein Vektor. Siehe auch '? Sprintf': * Nur logische, Integer-, Real- und Zeichenvektoren werden unterstützt * – Jaap
Tun Sie einfach' nums <-unlist (nums) 'nach dem Einlesen, um es in einen einfachen Vektor zu verwandeln –
In aller Ehrlichkeit, wenn Sie wissen nicht, wie Sie von einem Listenobjekt (das eigentlich ein data.frame ist, aber die Details sind egal) zu einem Vektorobjekt machen, Sie müssen sich wirklich die R-Grundlagen ansehen. PS: 'sprintf' gibt eine Zeichendarstellung zurück. Wenn du sie als Zeichen haben willst, benutze 'as.character' ... –