Ich habe eine gewichtete Stichprobe, für die ich Quantile berechnen möchte. 1
Wenn die Gewichte gleich sind (ob = 1 oder anders), stimmen die Ergebnisse im Idealfall mit denen von scipy.stats.scoreatpercentile()
und R überein quantile(...,type=7)
.
Ein einfacher Ansatz wäre, die Probe mit den angegebenen Gewichten zu "multiplizieren". Das ergibt effektiv ein lokal "flaches" ecdf in den Bereichen mit einem Gewicht> 1, was intuitiv wie der falsche Ansatz erscheint, wenn die Stichprobe tatsächlich eine Unter-Stichprobe ist. Insbesondere bedeutet dies, dass eine Stichprobe mit einer Gewichtung von 1 andere Quantile als eine Stichprobe mit einer Gewichtung von 2 oder 3 aufweist.
http://en.wikipedia.org/wiki/Percentile#Weighted_percentile gibt eine alternative Formulierung für das gewichtete Perzentil an. In dieser Formulierung ist nicht klar, ob benachbarte Proben mit identischen Werten zuerst kombiniert und ihre Gewichte summiert werden sollten, und in jedem Fall scheinen die Ergebnisse nicht mit Rs Standardtyp 7 quantile()
im ungewichteten / gleichgewichteten Fall übereinzustimmen. Die Wikipedia-Seite über Quantile erwähnt den gewichteten Fall überhaupt nicht.
Gibt es eine gewichtete Verallgemeinerung der Quantilfunktion von R "Typ 7"?
[mit Python, aber eigentlich nur auf der Suche nach einem Algorithmus, damit jede Sprache funktioniert]
M
[1] Gewichte sind ganze Zahlen; Die Gewichte sind die der Puffer, die in den Operationen "Ausblenden" und "Ausgeben" kombiniert werden, wie in http://infolab.stanford.edu/~manku/papers/98sigmod-quantiles.pdf beschrieben . Im Wesentlichen ist die gewichtete Stichprobe eine Teilstichprobe der vollständigen ungewichteten Stichprobe, wobei jedes Element x (i) in der Teilstichprobe die Gewichtselemente (i) in der vollständigen Stichprobe darstellt.
Antworten:
Dies ist ein möglicher Ansatz:
Ich denke, Sie werden das finden, wenn dieWich sind alle gleich, dann reproduziert dies R-7. Es gibt auch andere Ansätze, aber ich vermute, sie behandeln nicht alle geordneten Gewichte als gleich wichtig.
quelle