Berechnung der Spalte bedeutet, basierend auf Werten in einer anderen Spalte [Duplikat]

7

Ich benutze R und würde gerne Hilfe mit einem Problem haben, das ich habe:

Ich habe einen Datenrahmen ( df ) mit einer Spalten-ID und einer Spalten-Emotion. Jeder Wert in ID entspricht 40-300 Werten in Emotion (also keine festgelegte Zahl). Ich muss den Mittelwert aller i in Emotion für jedes j in ID berechnen. So sehen die Daten aus wie

%Vor%

Also sollte der Vektor der Mittel wie folgt aussehen: (4, 1, 8)

Jede Hilfe würde sehr geschätzt werden!

    
Paul Meinshausen 16.11.2012, 22:28
quelle

2 Antworten

16

Sie können aggregate

verwenden %Vor%

sapply könnte auch nützlich sein (diese andere Lösung wird Ihnen einen Vektor geben)

%Vor%

Es gibt viele Möglichkeiten, dies zu tun, einschließlich ddply von plyr Paket, data.table Paket, andere Kombinationen von split und lapply , dcast von reshape2 Paket. Siehe diese Frage für weitere Lösungen .

    
Jilber Urbina 16.11.2012 22:31
quelle
9

Dies ist genau der Job, für den tapply entwickelt wurde.

%Vor%     
42- 16.11.2012 23:51
quelle

Tags und Links