R: transforming "kurze form" Daten zu "lange form" Daten ohne for-Schleifen?

Angenommen ich habe einen R-dataframe wie diese:

  Subject Session  Property.A Property.B Property.C
1     100       1 -1.22527548 -0.9193751 -1.7501693
2     100      10  2.30627980  1.8940830 -0.8443976
3     100       2  2.33243332 -0.5860868 -4.2074489
4     100       3  0.38130810 -0.7336206  4.8016230
5     100       4  1.44685875  0.5066249  2.0138624
6     100       5  0.08907721 -0.3715202  1.4983700

Ich habe gehört, diese Art von Daten-frame bezeichnet als "Kurzform" oder "große form". Jetzt angenommen, ich möchte so Aussehen wie das, was ich gehört habe, als "lange form":

  Subject Session  Property    Value
1     100       1         A   -1.2252754
2     100       1         B   -0.9193751
3     100       1         C   -1.7501693
4     100       2         A    2.3324333
5     100       2         B   -0.5860868
6     100       2         C   -4.2074489

Ist, ich habe N Spalten, die möchte ich reduzieren, um nur zwei "name/Wert" - Spalten, mit anderen Spalten in der extended dataframe mit wiederholten Werten als erforderlich.

Natürlich konnte ich diese Konvertierung durchführen mit ein paar for-Schleifen, aber das scheint wirklich hässlich, und es wäre ein Schmerz zu erhalten, wenn ich mehr Eigenschaft Spalten.

Gibt es eine Möglichkeit, dies in R mit nur ein paar Zeilen code? Einige Magische Kombination von Funktionen, die ich noch nicht entdeckt haben?

  • Update: heute, ich habe klug, und ich benutze plyr für alle meine Daten Umformen muss!!
  • Was ist die Art und Weise zu tun, dass in plyr?
InformationsquelleAutor Maxy-B | 2011-05-04
Schreibe einen Kommentar