Wie kann ich Statistiken nach Dezile-Gruppen in data.table berechnen?

8

Ich habe eine data.table und möchte Statistiken nach Gruppen berechnen.

%Vor%

Diese Gruppen sollten durch

definiert werden %Vor%

Wie kann ich den Durchschnitt von b pro Bin berechnen, sagen wir, wenn b=-.5 Ich bin innerhalb von [-0.61386923071,-0.37534201964] , also in bin 3

    
statquant 21.03.2014, 20:31
quelle

2 Antworten

9

Wie wäre es mit:

%Vor%

Um einen Blick auf diese NA zu werfen (und die Ergebnisse trotzdem zu überprüfen), habe ich folgendes gemacht:

%Vor%

Nebenbei: Ich habe eine list -Spalte (jede Zelle ist selbst ein Vektor) zurückgegeben, um sich die Werte, die in die Bins gehen, kurz anzuschauen, nur um zu überprüfen. data.table zeigt beim Drucken Kommas an (und zeigt nur die ersten 6 Elemente pro Zelle an), aber jede Zelle von V3 ist tatsächlich ein numerischer Vektor.

Also werden die Werte außerhalb des ersten und letzten break zusammen als NA codiert. Es ist mir nicht klar, wie ich cut sagen kann, das nicht zu tun. Also habe ich gerade -Inf und + Inf hinzugefügt:

%Vor%

Das ist besser. Oder alternativ:

%Vor%

Auf diese Weise sehen Sie, was das Minimum und Maximum ist, anstatt es anzuzeigen - Inf und + Inf. Beachten Sie, dass Sie include=TRUE an cut übergeben müssen, sonst werden 11 Bins mit nur 1 in der ersten zurückgegeben.

    
Matt Dowle 21.03.2014, 20:47
quelle
3

Ich mache diese Art von Sache sehr, also schrieb ich eine ziemlich flexible bin_data () Methode dafür in meinem R-Paket - mltools . Es ist vollständig data.table basiert und nutzt das neue Nicht-Equi-Joins .

Um Ihre spezifische Frage zu beantworten, setzen Sie Bin1 als Spalte in DT und gruppieren Sie dann nach Bin1

%Vor%

Du kannst auch andere coole Sachen machen

Erstellen Sie 10 gleich große Bins nach Quantil

%Vor%

Die letzte Grenze links-geschlossen rechts-offen machen

%Vor%

Geben Sie Ihre eigenen expliziten Ablagen an (beachten Sie, dass leere Ablagen zurückgegeben werden)

%Vor%

Verwenden Sie Bins mit variabler Größe

%Vor%     
Ben 18.09.2016 17:28
quelle

Tags und Links