Gibt es eine Box-Cox-ähnliche Transformation für unabhängige Variablen? Das heißt, eine Transformation, die die Variable so optimiert , dass sie für ein lineares Modell angemessener ist?y~f(x)
Wenn ja, gibt es eine Funktion, mit der dies durchgeführt werden kann R
?
r
regression
data-transformation
normality-assumption
Tal Galili
quelle
quelle
R
und wenn ich einen Moment darüber nachdenke, bin ich mir nicht sicher, wie man das überhaupt tun würde. Welche Kriterien würden Sie optimieren, um die "linearste" Transformation sicherzustellen? ist verlockend, aber wie in meiner Antwort hier zu sehen ist , kann allein nicht verwendet werden, um festzustellen, ob die Linearitätsannahme eines Modells erfüllt ist. Hatten Sie einige Kriterien im Auge?Antworten:
John Tukey sprach sich für seine " Drei-Punkte-Methode " aus, um Re-Ausdrücke von Variablen zur Linearisierung von Beziehungen zu finden.
Ich werde dies mit einer Übung aus seinem Buch Exploratory Data Analysis veranschaulichen . Dies sind Quecksilberdampfdruckdaten aus einem Experiment, bei dem die Temperatur variiert und der Dampfdruck gemessen wurde.
Die Beziehung ist stark nichtlinear: siehe linkes Feld in der Abbildung.
Da es sich um eine Erkundungsübung handelt , erwarten wir, dass sie interaktiv ist. Der Analytiker wird gebeten , zunächst drei "typische" Punkte in der Handlung zu identifizieren : einen in der Nähe jedes Endes und einen in der Mitte. Ich habe das hier getan und sie rot markiert. (Als ich diese Übung vor langer Zeit zum ersten Mal gemacht habe, habe ich einen anderen Satz von Punkten verwendet, bin aber zu den gleichen Ergebnissen gekommen.)
Bei der Dreipunktmethode wird nach einer Box-Cox-Transformation gesucht, die bei Anwendung auf eine der Koordinaten (y oder x) (a) die typischen Punkte ungefähr auf a platziert line und (b) verwenden eine "nette" Potenz, die normalerweise aus einer "Rangliste" von Potenzen ausgewählt wird, die vom Analytiker interpretiert werden können.
Aus Gründen, die sich später zeigen werden, habe ich die Box-Cox-Familie um einen "Versatz" erweitert, damit die Transformationen in der Form vorliegen
Hier ist eine schnelle und schmutzige(λ,α) λ α
R
Implementierung. Es findet zuerst eine optimale Lösung, rundet dann auf den nächsten Wert auf der Leiter und optimiert (innerhalb angemessener Grenzen) , vorbehaltlich dieser Einschränkung . Es ist unglaublich schnell, da alle Berechnungen nur auf diesen drei typischen Punkten des ursprünglichen Datensatzes basieren. (Sie könnten sie sogar mit Bleistift und Papier machen, genau das hat Tukey getan.)λ αWenn die Dreipunktmethode auf die Druckwerte (y) im Quecksilberdampfdatensatz angewendet wird, erhalten wir das mittlere Feld der Diagramme.
In diesem Fall ergibt sich(0,0)
parms
gleich : Die Methode wählt die log-Transformation des Drucks.Wir sind an einem Punkt angelangt, der dem Kontext der Frage entspricht: Aus irgendeinem Grund (normalerweise zur Stabilisierung der Restvarianz) haben wir die abhängige Variable erneut ausgedrückt , aber wir stellen fest, dass die Beziehung zu einer unabhängigen Variablen nichtlinear ist. Um die Beziehung zu linearisieren, wenden wir uns nun der Umformulierung der unabhängigen Variablen zu. Dies geschieht auf die gleiche Weise, indem lediglich die Rollen von x und y vertauscht werden:
Die Werte(−1,253.75) −254 −1 1
parms
für die unabhängige Variable (Temperatur) sind : Mit anderen Worten, wir sollten die Temperatur in Grad Celsius über C und ihren Kehrwert (die Potenz) verwenden. (Aus technischen Gründen fügt die Box-Cox-Transformation dem Ergebnis eine weitere hinzu .) Die resultierende Beziehung wird im rechten Bereich angezeigt.- 254 - 1 1Inzwischen hat jeder mit dem geringsten wissenschaftlichen Hintergrund erkannt, dass die Daten uns "auffordern", absolute Temperaturen zu verwenden - wobei der Offset statt beträgt -, da diese physikalisch bedeutsam sein werden. (Wenn der letzte Plot mit einem Versatz von anstelle von neu gezeichnet wird , gibt es kaum sichtbare Änderungen. Ein Physiker würde dann die x-Achse mit beschriften, dh mit der reziproken absoluten Temperatur.)254 273 254 1 / ( 1 - x )273 254 273 254 1/(1−x)
Dies ist ein schönes Beispiel dafür, wie statistische Untersuchungen mit dem Verständnis des Untersuchungsgegenstands interagieren müssen . Tatsächlich zeigen sich gegenseitige absolute Temperaturen in physikalischen Gesetzen die ganze Zeit. Folglich allein mit einfachen EDA Methoden dieses jahrhundertealte, einfach, Daten - Set zu erkunden, haben wir die neu entdeckt Clapeyron-Beziehung : der Logarithmus des Dampfdruckes ist eine lineare Funktion der reziproken absoluten Temperatur. Nicht nur das, wir haben eine nicht sehr schlechte Schätzung des absoluten Nullpunkts (0−254 Grad C), aus der Steigung des rechten Diagramms können wir die spezifische Verdampfungsenthalpie berechnen, und - wie sich herausstellt - eine sorgfältige Analyse der Rückstände identifiziert einen Ausreißer (den Wert bei einer Temperatur von Grad C), zeigt uns, wie sich die Verdampfungsenthalpie (sehr geringfügig) mit der Temperatur ändert (wodurch das ideale Gasgesetz verletzt wird), und kann uns letztendlich genaue Informationen über den effektiven Radius der Quecksilbergasmoleküle geben! Das alles aus 19 Datenpunkten und einigen Grundkenntnissen in EDA.0
quelle
data <- cbind(temperature, pressure)
R
Werfen Sie einen Blick auf diesen Folien auf „Regression Diagnose“ von John Fox (von hier , komplett mit Referenzen), die kurz auf die Frage der Umwandlung Nicht - Linearität diskutieren. Es behandelt Tukeys "Ausbauchungsregel" für die Auswahl von Leistungstransformationen (angesprochen durch die akzeptierte Antwort), erwähnt aber auch die Box-Cox- und Yeo-Johnson-Transformationsfamilien. Siehe Abschnitt 3.6 der Folien. Für eine formalere Darstellung desselben Autors siehe J. Fox, Applied Regression Analysis und Generalized Linear Models, Second Edition (Sage, 2008) .
Bezüglich der R-Pakete, die dabei helfen, schauen Sie sich unbedingt das von J. Fox und S. Weisberg verfasste Fahrzeugpaket an . Dieses Paket begleitet J. Fox und S. Weisberg, ein Begleiter der angewandten Regression, Second Edition, (Sage, 2011) , ein weiteres Muss. Mit diesem Paket können Sie mit
basicPower()
(einfachen Leistungstransformationen),bcPower()
(Box-Cox-Transformationen) undyjPower()
(Yeo-Johnson-Transformationen) beginnen. Es gibt auch powerTransform () :In beiden Büchern finden Sie weitere Informationen zur Theorie hinter diesen Transformationen und zu rechnerischen Ansätzen.
quelle
Es hat viele Vorteile, die Schätzung kovariater Transformationen zu einem formalen Bestandteil des Schätzprozesses zu machen. Dies erkennt die Anzahl der beteiligten Parameter und führt zu einer guten Abdeckung des Konfidenzintervalls und einer Fehlererhaltung vom Typ I. Regressionssplines sind einige der besten Ansätze. Und Splines funktionieren im Gegensatz zu logarithmischen Ansätzen mit Null und negativen Werten vonX
quelle