Frage:
Verwenden der gewichteten Regression, um Anpassungslinien zu erhalten, für die ich nur zusammenfassende Daten habe
jebyrnes
2010-11-02 03:35:52 UTC
view on stackexchange narkive permalink

Ich arbeite mit einem Datensatz, für den ich nur Mittelwerte, Standardabweichungen und Stichprobengrößen für verschiedene Ebenen eines kontinuierlichen Prädiktors habe.

EG

 YX SD_Y N_Y5 1 3 410 2 6 215 3 2 8 

Ich möchte die Regressionslinie bestimmen, die zu diesen Daten passt. Ich mache mir Gedanken darüber, wie Datenpunkte in einer linearen Regression gewichtet werden sollten (ich bin auch daran interessiert, ein verallgemeinertes lineares Modell zu verwenden) - nach Stichprobengröße, Varianz, SD?

Irgendwelche Zeiger?

Gibt die Y-Spalte die Mittelwerte an?
Ja. Es gibt die Mittel.
Vier antworten:
#1
+8
whuber
2010-11-02 22:15:39 UTC
view on stackexchange narkive permalink

Dies ist eine Varianzanalyse.

Betrachten Sie schließlich einen der $ y $ mit der Standardabweichung $ s $ und lassen Sie den vorhergesagten Wert (der vom entsprechenden $ x $ abhängt) ) sei $ f $. Das ursprüngliche Ziel besteht darin, $ f $ zu variieren (innerhalb von Einschränkungen, die vom Modell abhängen; häufig muss $ f $ eine lineare Funktion von $ x $ sein), um die Summe der quadratischen Residuen zu minimieren. Angenommen, wir hatten den Originaldatensatz verfügbar. Die durch ein bestimmtes $ y $ zusammengefassten Werte seien $ y_1, y_2, \ ldots, y_k $, so dass $ y $ ihr Mittelwert und $ s $ ihre Standardabweichung ist. Ihr Beitrag zur Summe der Quadrate der Residuen ist gleich

$$ \ sum_ {i = 1} ^ k {\ left (y_i - f \ right) ^ 2} = k \ left (y - f \ rechts) ^ 2 + k 's ^ 2 \ text {.} $$

(Ich habe $ k' $ geschrieben, da sein Wert davon abhängt, wie Sie Ihre Standardabweichungen berechnen: Es ist $ k $ für eine Konvention und $ k-1 $ für eine andere.) Da der letzte Term nicht von $ f $ abhängt, hat keinen Einfluss auf die Minimierung : Wir können ihn vernachlässigen.

Der andere Begriff auf der rechten Seite zeigt an, dass Sie eine gewichtete Berechnung der kleinsten Quadrate mit Gewichten durchführen möchten, die den Zählungen $ k $ entsprechen (die Spalte "N_Y" der Daten). Entsprechend können Sie einen synthetischen Datensatz erstellen, indem Sie $ N_Y $ Kopien jedes Datums $ (X, Y) $ erstellen und eine normale Regression der kleinsten Quadrate durchführen.

Beachten Sie, dass diese Analyse nichts über die Form der Vorhersagefunktion voraussetzt: Sie kann beliebige erklärende Variablen enthalten und jede Form haben, auch nichtlineare.

Beachten Sie auch, dass die Gewichtung dies nicht tut hängen von den Standardabweichungen ab. Dies liegt daran, dass wir implizit angenommen haben, dass die Varianz der ys konstant ist, so dass alle Unterschiede zwischen den beobachteten Standardabweichungen zufälligen Schwankungen zugeschrieben werden. Diese Hypothese kann auf die übliche Weise getestet werden ( z. B. mit F-Tests). Für die Beispieldaten gilt: Diese Standardabweichungen variieren nicht wesentlich.

Bearbeiten Ich sehe im Nachhinein, dass diese Antwort lediglich die markige Antwort von @ onestop wiederholt. Ich lasse es offen, weil es zeigt, warum @onestop korrekt ist.

Ich hatte heute Morgen keine Zeit für mehr als eine markige Antwort. Ich hatte vor, es heute Abend zu erweitern, aber du hast die Arbeit sehr gut gemacht, whuber.
Habe ich Recht, wenn die Abweichungen erheblich variieren, sollten Sie die Abweichungen umgekehrt gewichten? Bei gleicher Varianz reduziert sich dies auf die Gewichtung um die Anzahl der Beobachtungen, da die Varianz von n IID-Beobachtungen (Varianz einer Beobachtung / n) beträgt.
@Chris (Dies ersetzt eine frühere Antwort, die fälschlicherweise auf eine andere Frage verwies.) Ja, das ist richtig. Man muss jedoch immer in direktem Verhältnis zur Anzahl der Beobachtungen gewichten (vorausgesetzt, die Beobachtungsfehler in jeder Gruppe sind unabhängig). Ich glaube nicht, dass es eine einfache oder allgemeine Regel gibt, ob man eine varianzgewichtete Regression verwenden soll oder nicht, wenn sich die Varianzen nicht wesentlich unterscheiden. (Der SD-Bereich von 6: 2 in diesem Fall mit nur 2 bis 8 Freiheitsgraden ist nicht breit genug, um überzeugende Beweise für Heteroskedastizität zu liefern.)
@whuber Lieber Whuber, ich hatte gehofft, Sie könnten mir bei dieser [Frage] helfen (http://stats.stackexchange.com/questions/207136/methods-to-compare-decay-rates), Sie geben immer sehr nette Antwortenzu methodischen Fragen.Hoffe, von dir zu hören
#2
+5
onestop
2010-11-02 11:01:23 UTC
view on stackexchange narkive permalink

Das Gewicht bedeutet jeweils die Anzahl der Punkte, die für die Berechnung aufgewendet wurden. Sie können später die geschätzten Standardabweichungen verwenden, um die Hypothese der Homoskedastizität zu testen, die dieser Ansatz annimmt. Wenn die Ns so klein sind wie in Ihrem Beispiel, würde dieser Test wahrscheinlich nicht viel Leistung haben, wenn die SDs nicht stark variieren.

Ich markiere dies als richtig, da es kurz und bündig ist. Sehen Sie sich jedoch Whubers schöne längere Erklärung an, WARUM es richtig ist. Und tatsächlich erzeugt die Gewichtung mit n beim Herumspielen mit dem Problem die korrekten Parameterschätzungen und relativ ähnlichen SE- und p-Werte wie die Arbeit mit simulierten Daten.
#3
+3
user28
2010-11-02 05:50:27 UTC
view on stackexchange narkive permalink

Das nicht übereinstimmende Modell sei:

$ Y_ {ia} = X_a \ beta + \ epsilon_i $

wobei

$ \ epsilon_i \ sim N. (0, \ sigma ^ 2) $

Ihr Aggregatmodell ist gegeben durch:

$ Y_a = \ frac {\ sum_i (Y_ {ia})} {n_a} $

wobei

$ n_a $ die Anzahl der Beobachtungen ist, die Sie dem $ a $ -Index entsprechen.

Daraus folgt:

$ Y_a = X_a \ beta + \ epsilon_a $

wobei

$ \ epsilon_a \ sim N (0, \ frac {\ sigma ^ 2} {n_a}) $ und

$ a = 1, 2, ... A $

Daher würde die OLS-Schätzung durch Minimieren gegeben werden:

$ \ sum_a (Y_a - X_a \ beta) ^ 2 $

Dies ergibt die übliche Lösung. Ich glaube also nicht, dass es einen Unterschied hinsichtlich der Schätzung der Steigungsparameter gibt.

Bearbeiten 1

Hier ist eine kleine Simulation in R, das die obige Idee veranschaulicht (Entschuldigung für den flockigen Code, da ich Fragen wie die oben genannten verwende, um R zu lernen).

  set.seed (1); n <c (4) , 2,8); x <-c (1,2,3); Daten <-Matrix (0,14,2) mean_data <-Matrix (0,3,2) Index <-1; für (i in 1 : 3) {for (obs in 1: n [i]) {data [index, 1] <-x [i]; Daten [Index, 2] <-x [i] * 8 + 1,5 * rnorm (1); mean_data [i, 1] = x [i]; mean_data [i, 2] = mean_data [i, 2] + data [index, 2]; Index = Index + 1; } mean_data [i, 2] = mean_data [i, 2] / n [i];} beta <lm (mean_data [, 2] ~ mean_data [, 1]);  

Der obige Code liefert die Ausgabe, wenn Sie beta ​​code> eingeben:

  Aufruf: lm (Formel = mittlere_Daten [, 2] ~ mittlere_Daten [, 1]) Koeffizienten: (Abfangen ) mean_data [, 1] -0.03455 7.99326  

Edit 2

OLS ist jedoch nicht effizient, da die Fehlervarianzen nicht gleich sind. Mit MLE-Ideen müssen wir also Folgendes minimieren:

$ \ sum_a {n_a (Y_a - X_a \ beta) ^ 2} $

Mit anderen Worten, wir möchten Folgendes minimieren:

$ \ sum_a {(\ sqrt {n_a} Y_a - \ sqrt {n_a} X_a \ beta) ^ 2} $

Somit kann die MLE wie folgt geschrieben werden:

Sei $ W $ eine Diagonalmatrix mit dem $ \ sqrt {n_a} $ entlang der Diagonale. Somit kann die MLE-Schätzung wie folgt geschrieben werden:

$ (X 'X) ^ {- 1} X' Y $

wobei

$ Y. = W [Y_1, Y_2, ... Y_A] '$ und

$ X = W [X_1, X_2, ... X_A]' $

Eine andere Art, darüber nachzudenken Dies ist:

Betrachten Sie die Varianz von $ Y $. Die oben für $ Y $ angegebene Transformation stellt sicher, dass die Varianz der einzelnen Werte von $ Y $ identisch ist, wodurch die Bedingungen des Gauß-Markov-Theorems erfüllt werden, dass OLS BLAU ist.

#4
  0
Owe Jessen
2010-11-02 05:42:39 UTC
view on stackexchange narkive permalink

Ich denke, ich würde normalisierte Variablen (z = (x-Mittelwert (x)) / (sd (x)) berechnen und die Regression ausführen. Oder Sie könnten einen Weg finden, um Samples in einem Bootstrap zu generieren. I ' Ich bin mir nicht sicher, ob dies die Lehrbuchlösung wäre, aber intuitiv sollte es funktionieren.



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 2.0-Lizenz, unter der er vertrieben wird.
Loading...