Wie lassen sich Proportionen am besten transformieren, wenn sie eine unabhängige Variable sind?

12

Ich dachte, ich hätte dieses Problem verstanden, aber jetzt bin ich mir nicht so sicher und würde es gerne mit anderen klären, bevor ich fortfahre.

Ich habe zwei Variablen Xund Y. Yist ein Verhältnis, und es ist nicht durch 0 und 1 begrenzt und ist im Allgemeinen normalverteilt. Xist ein Anteil, und er ist durch 0 und 1 begrenzt (er reicht von 0,0 bis 0,6). Wenn ich eine lineare Regression von Y ~ Xund stelle fest, dass Xund Ysind deutlich linear miteinander verbunden. So weit, ist es gut.

Aber dann untersuche ich weiter und ich fange an zu denken , dass vielleicht Xund Y‚s Beziehung könnte mehr gekrümmt sein als linear. Für mich sieht es aus wie die Beziehung von Xund Yvielleicht näher an Y ~ log(X), Y ~ sqrt(X)oder Y ~ X + X^2, oder so ähnlich. Ich habe empirische Gründe anzunehmen, dass die Beziehung krummlinig sein könnte, aber keine Gründe anzunehmen, dass irgendeine nichtlineare Beziehung besser sein könnte als irgendeine andere.

Ich habe ein paar verwandte Fragen von hier. Erstens nimmt meine XVariable vier Werte an: 0, 0,2, 0,4 und 0,6. Wenn ich diese Daten log- oder Quadratwurzel-transformiere, verzerrt sich der Abstand zwischen diesen Werten, so dass die 0-Werte viel weiter von allen anderen entfernt sind. Aus Mangel an einer besseren Art zu fragen, ist es das, was ich will? Ich gehe davon aus, dass dies nicht der Fall ist, da ich je nach akzeptiertem Verzerrungsgrad sehr unterschiedliche Ergebnisse erhalte. Wenn ich das nicht will, wie soll ich es vermeiden?

Zweitens, um diese Daten logarithmisch zu transformieren, muss ich zu jedem XWert einen Betrag addieren, da Sie den Log von 0 nicht nehmen können. Wenn ich einen sehr kleinen Betrag addiere, z. Wenn ich eine größere Menge hinzufüge, z. B. 1, bekomme ich sehr wenig Verzerrung. Gibt es einen "richtigen" Betrag, der zu einer XVariablen hinzugefügt werden kann? Oder ist es unangemessen, einer Variablen etwas hinzuzufügen ,X anstatt eine alternative Transformation (z. B. Kubikwurzel) oder ein Modell (z. B. logistische Regression) zu wählen?

Das Wenige, was ich in dieser Angelegenheit herausfinden konnte, lässt mich das Gefühl haben, dass ich vorsichtig sein sollte. Für andere R-Benutzer würde dieser Code einige Daten mit einer ähnlichen Struktur wie meine erstellen.

X = rep(c(0, 0.2,0.4,0.6), each = 20)
Y1 = runif(20, 6, 10)
Y2 = runif(20, 6, 9.5)
Y3 = runif(20, 6, 9)
Y4 = runif(20, 6, 8.5)
Y = c(Y4, Y3, Y2, Y1)
plot(Y~X)
Bajcz
quelle
Sie sagen, Y ist ein Anteil, aber in Ihren Daten liegt er zwischen 6 und 10?
Ja, ich habe das oben behoben - es ist ein Verhältnis, kein Verhältnis.
Bajcz

Antworten:

13

Die Hauptfrage zum Transformieren von Proportionen (ich verwende als Symbol, ähnlich, aber nicht identisch zu Ihrer Notation) lässt einige allgemeine Kommentare zu.x

Im Folgenden gehe ich davon aus, dass das Hauptmotiv für die Transformation von Proportionen, die Kovariaten sind (Prädiktoren, unabhängige Variablen), darin besteht, die Annäherung an die Linearität der Beziehung zu verbessern oder im Erkundungsmodus eine klarere Vorstellung von der Form oder der Existenz von zu erhalten irgendeine Beziehung. Wie üblich ist es nicht entscheidend, ob eine Kovariate (z. B.) ungefähr normalverteilt ist. (Proportionen sind ein nicht zu entfernter Verwandter von Indikatorvariablen mit den Werten die niemals normal verteilt werden können, und auch Proportionen sind notwendigerweise begrenzt.)0,1

Wenn die Proportionen exakte Nullen oder exakte Einsen erreichen können, ist es wichtig, dass für diese Grenzen eine Transformation definiert wird, die eindeutig ausschließt , da log 0 unbestimmt ist. Darüber hinaus erfordert eine bestimmte Form im Idealfall eine inhaltliche (wissenschaftliche, praktische) Begründung, ohne dass sich aus einer einfachen Analyse ergibt, dass log ( x + c ) sehr empfindlich auf den Wert von c reagiert , wie Sie andeuten. logxlog0log(x+c)c

Dies ist mit Logarithmen zur Basis etwas einfacher zu erkennen. Betrachten wir daher vorübergehend c = 10 k, damit log 10 ( x + 10 k ) x = 0 auf k abbildet .10c=10klog10(x+10k)x=0k

Daher Karten x = 0 auf 0 und x = 1 bis etwa 0.301 , während k = - 3 , c = 0,001 Karten x = 0 bis - 3 und x = 1 , nur ein ganz klein wenig mehr als 0 .k=0,c=1x=00x=10.301k=3,c=0.001x=03x=10

In ähnlicher Weise ist was auch immer bedeutet, dass 0 auf dieselben Grenzen abgebildet wird, wohingegen in einer zunehmend guten Näherung x = 1 auf 0 abgebildet wird .k=6,9,0x=10

Die Untergrenze wird also mit immer kleineren addierten Konstanten nach außen gedehnt , während die Obergrenze in etwa gleich bleibt. Solche Transformationen können daher den unteren Teil des Bereichs übermäßig ausdehnen und sogar Ausreißer aus sehr kleinen Werten bei oder nahe 0 erzeugen .c0

Leute, die dies vorschlagen, stellen sich einfach vor, dass (nun zu jeder Basis, die Sie mögen) sich sehr ähnlich verhalten sollte wie log x für kleines c , was eindeutig für großes x gilt , aber überhaupt nicht für kleines x . Ansonsten kann sich die steilere und steilere Steigung von log x in Abhängigkeit von x als x 0 hier sehr stark beißen.log(x+c)logxcxxlogxxx0

Es scheint vorzuziehen, sich auf Transformationen zu konzentrieren, die in der Nähe von und (aus anderen, aber verwandten Gründen) auch in der Nähe von x = 1 allmählicher variieren .x=0x=1

Quadratwurzeln und Kubikwurzeln und andere Potenzen sind für x = 0 , 1 perfekt definiert und helfen oft, wenn Werte nahe 0 gedehnt werden müssen . Aber diese Transformationen sind bekannt und ich konzentriere mich hier mehr auf eine andere Möglichkeit.xpx=0,10

Die Familie der gefalteten Potenzen, die von JW Tukey ( Exploratory Data Analysis , Reading, MA: Addison-Wesley, 1977) popularisiert wurde , ist eine Möglichkeit und ist . Obwohl kein Zwang gibt es Kräfte zu wählen , die einfach klingende Namen erlauben, die Auswahl p = 1 / 2 (gefaltet root) und p = 1 / 3 (gefaltet Kubikwurzel) scheint die nützlichsten Mitglieder dieser Familie.xp(1x)pp=1/2p=1/3

Die Familie ähnelt den bekannten Logit Transformation und in der Tat die Logit ist ein Grenzfall als p zu neigt 0 . Ein wesentlicher Unterschied besteht darin, dass gefaltete Potenzen für x = 0 , 1 und p 0 definiert sind .logit x=logxlog(1x)p0x=0,1p0

Gefaltete Potenzen, einschließlich des Logits, behandeln die Extremfälle in der Nähe von und 1 schiefsymmetrisch und stellen sie als inverse Sigmoidkurven dar (einige Grafiken unten), die additives und multiplikatives Verhalten mischen und häufig qualitatives (wenn nicht physikalisches, biologisches, wirtschaftliches, was auch immer) wiedergeben. Fakten für das zugrunde liegende Phänomen, dass01

  • Die Differenz von zu 0,02 kann eine "große Sache" sein (sicher, x ändert sich nur um 0,01 , aber es verdoppelt sich auch).0.010.02x0.01

  • Die Differenz von zB zu 0,99 kann auch eine "große Sache" sein (sicher, x ändert sich nur um 0,01 , aber der "Bruch ohne" 1 - x halbiert sich auch).0.980.99x0.011x

  • Die Differenz von beispielsweise zu 0,51 kann ein "kleinerer Deal" sein (sicher, x ändert sich auch um 0,01 , aber die proportionale Änderung ist viel kleiner).0.500.51x0.01

Dies ist vielleicht am einfachsten zu überlegen, wenn man sich eine zugrunde liegende Dynamik vorstellt: Der zunehmende Anteil der gebildeten Personen benötigt einen großen Schub, beschleunigt und verlangsamt sich dann, wenn er sich der Asymptote der allgemeinen Alphabetisierung nähert. Die zeitliche Kurve kann also einer steigenden oder fallenden Logistik ähneln. Die Tatsache, dass sich die Proportionen und 1 mehr oder weniger langsam nähern, ist natürlich eine von mehreren Motivationen für logit und ähnliche Modelle für proportionale Antworten. Obwohl wir uns hier auf proportionale Kovariaten konzentrieren, können Sigmoide auch hier nützlich sein.01

Gefaltete Potenzen wie die gefaltete Wurzel oder die Kubikwurzel sind nicht so stark sigmoide wie das logit, aber ein wertvoller Vorteil ist, dass sie direkt und einfach ohne Fudges, Kludges oder Nudges für .x=0,1

Wenn Sie sich Ihrem gefälschten, aber scheinbar realistischen Datensatz zuwenden (den ich in meine eigene Lieblingssoftware importiert habe, aber die Analyse in allem Anständigen einfach ist), stellt sich heraus, dass keine dieser Transformationen wirklich hilft. Die grafische Darstellung der Daten gibt jedoch eine deutliche Warnung, dass sogar eine mächtige starke Transformation darstellt, wie auch durch direktes Zeichnen ersichtlich wird.log(x+0.001)

Die zwei Hauptpunkte, die ich ansprechen möchte, sind die folgenden

  1. oft vorgeschlagen und oft scheinbar als harmlos angesehen, ist eine gefährliche Transformation, sofern sie nicht verstanden und oft unangemessen ist, wenn sie die Verteilung für kleines x stark ausdehnt(es sei denn, dies ist wirklich das gewünschte Verhalten).log(x+c)x

  2. Für Ihre Beispieldaten scheint keine Transformation, die ich versucht habe, zu helfen.

Gleichzeitig sind andere Möglichkeiten noch lange nicht ausgeschöpft. (Insbesondere habe ich keine Quadratwurzel oder Kubikwurzel ausprobiert und betont, dass dies bei vielen anderen Problemen offensichtliche und ernstzunehmende Kandidaten sein könnten.)

Die erste Gruppe von Diagrammen zeigt einfach einige Kandidatentransformationen für Proportionen, die sowohl als auch 1 erreichen können . (Ich habe natürliche Logarithmen verwendet, aber die Formen hängen nicht von der gewählten Basis ab.)01

Bildbeschreibung hier eingeben

Der zweite Satz von Diagrammen zeigt keine Transformation, die für die Beispieldaten hilfreich ist. (Zum Vergleich ergibt eine einfache Regression der ursprünglichen Daten %, RMSE = 0,994 .)R2=3.7=0.994

Bildbeschreibung hier eingeben

Winziges Puzzle. Ihr soll ein Anteil sein, aber seine Werte liegen bei 6 bis 10 .y610

BEARBEITEN: Die Originaldaten konnten hier eingetragen werden, da das OP Daten kurz gepostet, diese aber später wieder entfernt hat.

Andere Fäden, die hier gefaltete Kräfte verwenden, umfassen

Proportionsdaten transformieren: Wenn Bögen in Quadratwurzel nicht ausreichen

Regression: Streudiagramm mit niedrigem R-Quadrat und hohen p-Werten

Zeichnen Sie einen stark verzerrten Datensatz

Nick Cox
quelle
Hervorragende Antwort und sehr gründlich. Ich denke, ich sollte sagen, mein YVerhältnis ist eher ein Verhältnis als ein Verhältnis, was wahrscheinlich ein ziemlich wesentlicher Unterschied ist. Es war also gut von Ihnen, darauf hinzuweisen.
Bajcz
Proportionen sind begrenzt, wie ich sie definiere. Vielen Dank für die Klarstellung, die für meine Analyse keinen Unterschied macht (weshalb ich sie als winziges Detail bezeichnet habe).
Nick Cox
2
Weiterer Kommentar: Sie können die Krümmung im Prinzip mit Splines oder Smoothers überprüfen, aber mit nur 4 verschiedenen Ebenen des Prädiktors ist das nicht einfach. Ich würde die Quantilregression für Ihre Daten in Betracht ziehen.
Nick Cox
x2x310x=0,1