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
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:
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.
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
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%Tags und Links r data.table quantile