2012-05-21 8 views
27

Wie ordne ich die Dimensionen eines n-dimensionalen Arrays neu an? Wenn ich beispielsweise ein dreidimensionales Array mit Verkaufsdaten habe, wobei die erste Dimension das Datum darstellt, ist die zweite Dimension der Store und die dritte Dimension ist Department. Wie transformiere ich das Array so, dass die erste Dimension Store, die zweite Abteilung und die dritte Date ist. Dies ist nur ein Beispiel. Ich hoffe auf eine allgemeine Lösung.So ändern Sie die Reihenfolge der Array-Dimensionen

Antwort

46

Die Funktion dafür ist aperm, aus dem Basispaket. Es ist eine Verallgemeinerung der Funktion t() transponieren zu mehrdimensionalen Arrays. Für Ihr Beispiel würde nennen Sie es wie folgt:

new.data <- aperm(old.data, c(2,3,1)) 
+0

Perfect - danke. – ruser

Verwandte Themen