94 Stimmen

Umwandlung einer Matrix in eine Liste von Spaltenvektoren

Angenommen, Sie möchten eine Matrix in eine Liste umwandeln, wobei jedes Element der Liste eine Spalte enthält. list() o as.list() offensichtlich nicht funktionieren wird, und bis jetzt habe ich einen Hack verwendet, der das Verhalten von tapply :

x <- matrix(1:10, ncol = 2)

tapply(x, rep(1:ncol(x), each = nrow(x)), function(i) i)

Ich bin damit nicht ganz zufrieden. Kennt jemand eine sauberere Methode, die ich übersehen habe?

(um eine Liste mit den Zeilen zu erstellen, kann der Code natürlich in :

tapply(x, rep(1:nrow(x), ncol(x)), function(i) i)

)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X