Ich möchte den Unterschied in der Reaktion zweier Variablen auf einen Prädiktor testen. Hier ist ein minimal reproduzierbares Beispiel.
library(nlme)
## gls is used in the application; lm would suffice for this example
m.set <- gls(Sepal.Length ~ Petal.Width, data = iris,
subset = Species == "setosa")
m.vir <- gls(Sepal.Length ~ Petal.Width, data = iris,
subset = Species == "virginica")
m.ver <- gls(Sepal.Length ~ Petal.Width, data = iris,
subset = Species == "versicolor")
Ich kann sehen, dass die Steigungskoeffizienten unterschiedlich sind:
m.set$coefficients
(Intercept) Petal.Width
4.7771775 0.9301727
m.vir$coefficients
(Intercept) Petal.Width
5.2694172 0.6508306
m.ver$coefficients
(Intercept) Petal.Width
4.044640 1.426365
Ich habe drei Fragen:
- Wie kann ich den Unterschied zwischen Pisten testen?
- Wie kann ich den Unterschied zwischen Restabweichungen testen?
- Wie lassen sich diese Vergleiche auf einfache und effektive Weise darstellen?
Eine verwandte Frage, Methode zum Vergleichen des Variablenkoeffizienten in zwei Regressionsmodellen , schlägt vor, das Modell mit einer Dummy-Variablen erneut auszuführen, um die Steigungen zu unterscheiden. Gibt es Optionen, die die Verwendung unabhängiger Datensätze ermöglichen würden?
Antworten:
Wie kann ich den Unterschied zwischen Pisten testen?
Fügen Sie einen Dummy für Arten hinzu, lassen Sie ihn mit interagieren und , ob dieser Dummy von Bedeutung ist. Sei die Kelchblattlänge und die Pedalbreite und die Dummy-Variablen für die drei Arten. Die vergleichen das ModellL i P i S 1 , S 2 , S 3Pich Lich Pich S1, S2, S3
mit dem Modell, mit dem die Wirkung von für jede Spezies unterschiedlich sein kann:Pich
logLik
Was ist ein einfacher und effektiver Weg, um den Vergleich zu präsentieren?
Bearbeiten: Mir ist aufgefallen, dass dem Text eine weitere Frage hinzugefügt wurde. Also füge ich eine Antwort hinzu:
Wie kann ich den Unterschied zwischen Restabweichungen testen?
Dazu müssen Sie den Datensatz schichten und separate Modelle anpassen, da das von mir vorgeschlagene interaktionsbasierte Modell die Restvarianz so einschränkt, dass sie in jeder Gruppe gleich ist. Wenn Sie separate Modelle anpassen, wird diese Einschränkung aufgehoben. In diesem Fall können Sie den Likelihood-Ratio-Test weiterhin verwenden (die Wahrscheinlichkeit für das größere Modell wird jetzt berechnet, indem die Wahrscheinlichkeiten aus den drei separaten Modellen summiert werden). Das "Null" -Modell hängt davon ab, womit Sie es vergleichen möchten
quelle
gls(Sepal.Length ~ species:Petal.Width, data = iris)
species
gls(Sepal.Length ~ species*Petal.Width, data=iris)
gls
Modell passen könnten, aber mit der Optionweights=varIdent(form=~1|Species)
(in Bezug auf die zweite Frage) unterschiedliche Restabweichungen für jede Art berücksichtigen könnten .Um diese Fragen mit R-Code zu beantworten, verwenden Sie Folgendes:
1. Wie kann ich den Unterschied zwischen Steigungen testen?
Antwort: Untersuchen Sie den ANOVA-p-Wert aus der Interaktion von Petal.Width nach Species und vergleichen Sie dann die Steigungen mit lsmeans :: lstrends wie folgt.
2. Wie kann ich die Differenz zwischen Restabweichungen testen?
Wenn ich die Frage verstehe, können Sie Pearson-Korrelationen wie folgt mit einer Fisher-Transformation vergleichen, die auch als "Fisher's r-to-z" bezeichnet wird.
3. Wie lassen sich diese Vergleiche auf einfache und effektive Weise darstellen?
Wir verwendeten eine lineare Regression, um das Verhältnis von Kelchblattlänge zu Blütenblattbreite für jede Art zu vergleichen. Wir fanden keine signifikante Wechselwirkung in den Beziehungen von Kelchblattlänge zu Blütenblattbreite für I. Setosa (B = 0,9), I. Versicolor (B = 1,4), noch I. Virginica (B = 0,6), F (2, 144) = 1,6, p = 0,19 Ein Fisher-r-zu-z-Vergleich zeigte, dass die Pearson-Korrelation für I. Setosa (r = 0,28) war signifikant niedriger (p = 0,02) als I. Versicolor (r = 0,55) Ebenso war die Korrelation für I. Virginica (r = 0,28) signifikant schwächer (p = 0,02) als die für I. Versicolor beobachtete. "
Schließlich immer visualisieren Sie Ihre Ergebnisse!
quelle
Ich stimme dem vorherigen Vorschlag zu. Sie sollten ein Modell mit mehreren Regressionen mit einer Dummy-Variablen für jeden Datensatz anpassen. Auf diese Weise können Sie testen, ob sich die Abschnitte unterscheiden. Wenn Sie auch wissen möchten, ob sich die Steigungen unterscheiden, müssen Sie auch Interaktionen zwischen den Dummies und der betreffenden Variablen einbeziehen. Es ist kein Problem damit, dass die Daten unabhängig sind. Beachten Sie, dass , wenn sie sowohl unabhängig und (zum Beispiel) verschiedene Arten, dann würden Sie nicht in der Lage sein zu sagen , ob die Differenz Sie finden aufgrund der unterschiedlichen Spezies ist oder die unterschiedlichen Datensätzen, wie sie perfekt verwechselt werden. Es gibt jedoch keinen Test / Get-out-of-Jail-Free-Karte, mit der Sie dieses Problem umgehen können, ohne eine neue Probe zu sammeln und Ihre Studie erneut durchzuführen.
quelle