Normalerweise, wenn Sie eine Spalte erhalten, ist es ein Vektor. Wie kann ich es als data.frame mit den gleichen Zeilennamen und dem entsprechenden Spaltennamen behalten?Wie bekomme ich jede Spalte als data.frame (anstelle eines Vektors) von einem data.frame?
Antwort
Statt die gewünschten Spalt des Anrufers mit einem Komma d.h. data.frame [i] verwenden data.frame [i] die Klasse als data.frame zu bewahren und auch Zeilennamen beizubehalten.
data.frame[,i] #As a vector
data.frame[i] #As a data.frame
Schön, ich wusste nicht, dass du das tun könntest +1 –
Ich schätze, das fügt meinem Frage-Post etwas Wert hinzu und verdient es nicht, geschlossen zu werden :) – RNA
das Argument Tropfen = FALSCH wie in verwenden:
mtcars[, 1, drop = FALSE]
Wenn Sie eine einzelne Nummer angeben, wenn ein data.frame subsetting, erhalten Sie eine einspaltige data.frame. Dies unterscheidet sich von der Matrix-Teilmenge, die ein "fehlendes" i
-Argument erfordert, um die gesamte Spalte zurückzugeben (die dann in einen Vektor konvertiert wird).
# mtcars is a data.frame
mtcars[1] # first column
str(mtcars[1]) # is still a data.frame
# 'data.frame': 32 obs. of 1 variable:
# $ mpg: num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
# MTCARS is a matrix
MTCARS <- as.matrix(mtcars)
as.matrix(MTCARS)[1] # only the first element
# [1] 21
str(as.matrix(MTCARS)[,1]) # the first column, as a vector
Named num [1:32] 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
- attr(*, "names")= chr [1:32] "Mazda RX4" "Mazda RX4 Wag" "Datsun 710" ...
- 1. Wie bekomme ich Zeile von R data.frame
- 2. Wie extrahiere ich eine einzelne Spalte aus einem data.frame als data.frame?
- 3. Einfügen einer Spalte aus Spaltennamen eines data.frame
- 4. Liste benannter Listen data.frame
- 5. Subtrahieren Liste in data.frame mit Liste von einem anderen data.frame
- 6. Jede Zeile eines data.frame zu einer Matrix umformen. R
- 7. Wie data.frame Spalte von Factor in numerische
- 8. Partielle Summe des numerischen Vektors nach Zeile von data.frame
- 9. Liste aller Faktorstufen eines data.frame
- 10. Separate Duplikate eines data.frame in einen anderen data.frame
- 11. R Listen von Zeichen zu einem data.frame
- 12. Werte von data.frame kombinieren
- 13. Zeilenweise Erweiterung von data.frame
- 14. Wie die unbenannte ersten Spalte einer data.frame
- 15. Wie man einzelne Einträge innerhalb einer Spalte eines data.frame
- 16. Summe aller Werte in jeder Spalte eines data.frame in R
- 17. Mehrwert von einem data.frame zu einem anderen data.frame durch eine variable
- 18. Erzeuge Barplot von data.frame
- 19. Filter jeder Spalte einer data.frame basierend auf einem bestimmten Wert
- 20. R - unembedding eine Liste von Listen aus einer data.frame Spalte
- 21. konvertieren data.frame in data.table Spalte fehlt
- 22. Wie gruppiere ich einen data.frame nach Datum?
- 23. R Subset data.frame von max-Wert eines Vektors und gruppierte von einer anderen
- 24. einen Adjazenzliste von einem data.frame Erstellen
- 25. Shiny: data.frame bedingtes Format
- 26. Wie gruppiere ich Zeilen in meinem data.frame?
- 27. simple data.frame umformen
- 28. extrahiere letzten 2 Zeichen aus einer Spalte in einem data.frame
- 29. R: Allgemein Abplattung JSON data.frame
- 30. Subsetting eines data.frame unter bestimmten Kriterien
mögliche Duplikat von [1-dimensionale Matrix zu einem Vektor in R geändert wird] (http://stackoverflow.com/questions/9949202/1-dimensional-matrix-is-changed-to-a-vector -in-r) – joran
@joran Sorry hat das mögliche Duplikat nicht angezeigt. Ich werde meine Antwort verlassen und wenn diese Frage abgeschlossen ist, ist die Entfernung meiner Antwort ein strittiger Punkt. –
@TylerRinker Mach dir keine Sorgen. Dies ist nur eine wirklich häufige Frage, das ist alles. – joran