Hinweise zur Identifizierung der Kurvenform mit Quantreg

10

Ich verwende das Quantreg- Paket, um ein Regressionsmodell mit dem 99. Perzentil meiner Werte in einem Datensatz zu erstellen. Basierend auf den Ratschlägen einer früheren Stackoverflow- Frage, die ich gestellt habe, habe ich die folgende Codestruktur verwendet.

mod <- rq(y ~ log(x), data=df, tau=.99)    
pDF <- data.frame(x = seq(1,10000, length=1000) ) 
pDF <- within(pDF, y <- predict(mod, newdata = pDF) )

was ich oben auf meinen Daten gezeichnet zeige. Ich habe dies mit ggplot2 mit einem Alpha-Wert für die Punkte gezeichnet. Ich denke, dass der Schwanz meiner Verteilung in meiner Analyse nicht ausreichend berücksichtigt wird. Möglicherweise liegt dies daran, dass es einzelne Punkte gibt, die bei der Perzentiltypmessung ignoriert werden.

Einer der Kommentare deutete darauf hin

Die Paketvignette enthält Abschnitte zur nichtlinearen Quantilregression sowie Modelle mit Glättungssplines usw.

Aufgrund meiner vorherigen Frage habe ich eine logarithmische Beziehung angenommen, bin mir aber nicht sicher, ob das richtig ist. Ich dachte, ich könnte alle Punkte im 99. Perzentilintervall extrahieren und sie dann separat untersuchen, aber ich bin mir nicht sicher, wie ich das machen soll oder ob das ein guter Ansatz ist. Ich würde mich über Ratschläge freuen, wie diese Beziehung besser identifiziert werden kann.

Geben Sie hier die Bildbeschreibung ein

Celenius
quelle
Es gibt ein paar gute Fragen auf der Website, die bereits über die Transformation solcher Daten sprechen, siehe stats.stackexchange.com/q/1444/1036 oder stats.stackexchange.com/q/298/1036
Andy W
Können Sie das Diagramm aktualisieren, um den bedingten Median hinzuzufügen? Dies scheint mir eher ein
Quantilkreuzungsproblem
@ user603 Was meinst du mit dem bedingten Median? (Ich habe online gesucht, bin mir aber nicht sicher, wie ich es berechnen soll)
Celenius
tau = 0,5 in der Funktion rq ().
user603
1
Wenn Ihr Ziel speziell darin besteht, das bedingte 99. Perzentil zu schätzen, würde ich für eine nichtlineare Quantilregression stimmen (irgendwie - ich kenne die R-Pakete nicht gut), da es nicht so klingt, als ob Sie die wahre funktionale Form kennen . Ich war mir aus Ihrer vorherigen Frage immer noch nicht klar, was das eigentliche Ziel ist, also würde ich den Kommentar zu Ihrer vorherigen Frage von Spacedman am 4. Januar um 17:01 Uhr
David M Kaplan

Antworten:

1

Alle Modelle sind falsch, aber einige sind nützlich (George Box). Sie erzwingen eine logrithmische Form für Ihre angepasste Kurve, und ehrlich gesagt sieht es nicht so schlecht aus. Die Passform am Schwanz ist schlecht, weil dort weniger Punkte sind; Die beiden Parameter, die Sie zugelassen haben, passen zum Großteil der Daten. Mit anderen Worten, auf einer Protokollskala ist dieser Schwanz nicht weit genug von der Masse Ihrer Daten entfernt, um eine Hebelwirkung zu erzielen. Es hat nichts mit der Quantilnatur der Regression zu tun; OLS würde diese Punkte auch ignorieren (insbesondere auf der Protokollskala).

Es ist ziemlich einfach, etwas mehr Nichtlinearität zuzulassen. Ich mag natürliche Splines, aber auch hier sind alle Modelle falsch:

library(splines)
mod <- rq(y ~ ns(log(x), df=6), data=df, tau=.99)

Das quantregPaket enthält einige spezielle Haken für monotone Splines, wenn Sie diesbezüglich Bedenken haben.

Shea Parkes
quelle