Hier mache ich eine neue Spalte, um anzuzeigen, ob myData über oder unter seinem Median liegt
%Vor%Funktioniert gut. Nun möchte ich dasselbe tun, aber die mittleren Splits innerhalb jeder Ebene von myFactor berechnen.
Ich habe das erfunden:
%Vor%byOutput enthält was ich will. Es kategorisiert jedes Element der Faktoren A, B und C korrekt. Ich möchte jedoch eine neue Spalte, myDataFrame $ FactorLevelMedianSplit, erstellen, die die neu berechnete Median-Aufteilung anzeigt.
Wie konvertiert man die Ausgabe des "by" -Befehls in eine nützliche Datenrahmenspalte?
Ich denke, vielleicht ist der "by" -Befehl kein R-artiger Weg, dies zu tun ...
Aktualisieren :
Mit Thierrys Beispiel, wie man factor () geschickt einsetzt, und nachdem ich die "ave" -Funktion in Spectors Buch entdeckt habe, habe ich diese Lösung gefunden, die keine zusätzlichen Pakete benötigt.
%Vor%Hier ist ein hack-ish Weg. Hadley könnte etwas eleganteres mit sich bringen:
Um zu beginnen, verketten wir einfach die by
Ausgabe:
Und was zählt, dass wir hier die Faktorstufen 1 und 2 erhalten, mit denen wir einen neuen Faktor mit diesen Ebenen neu indizieren können:
%Vor% was wir dann der data.frame
zuweisen können, die Sie ändern wollten:
Update : Es macht nichts, dass wir myDataFrame neu indizieren müssen, um A A ... A B ... B C ... C zu sortieren, bevor wir die neue Spalte hinzufügen. Links als Übung ...