Angenommen, ich habe eine Matrix foo
wie folgt:
Ich möchte es in eine Liste verwandeln, die aussieht wie
%Vor%Sie können es wie folgt tun:
lapply(apply(foo, 1, function(x) list(c(x[1], x[2]))), function(y) unlist(y))
Ich bin an einer alternativen Methode interessiert, die nicht so kompliziert ist. Beachte, wenn du nur apply(foo, 1, function(x) list(c(x[1], x[2])))
machst, gibt es eine Liste in einer Liste, die ich vermeiden möchte.
Hier ist eine sauberere Lösung:
%Vor%Das nutzt die Tatsache aus, dass ein Datenrahmen wirklich nur eine Liste von Vektoren gleicher Länge ist (während eine Matrix wirklich ein Vektor ist, der mit Spalten und Zeilen angezeigt wird ... Sie können dies sehen, indem Sie foo [5] aufrufen. zum Beispiel).
Sie könnten das auch tun, obwohl es keine große Verbesserung ist:
%Vor%