Wir können lm()
einen Wert vorhersagen, benötigen aber in einigen Fällen noch die Gleichung der Ergebnisformel. Fügen Sie beispielsweise die Gleichung zu Diagrammen hinzu.
r
regression
lm
user27736
quelle
quelle
lm
und linearen Modellen im Allgemeinen gut aus, aber es ist überhaupt nicht klar, was genau Sie wollen. Können Sie ein Beispiel oder etwas zur Verdeutlichung geben? Ist das für ein Thema?coef()
das angepasstelm
Objekt aufzurufen , wie in:mod <- lm(y ~ x); coef(mod)
lm(y~x)$call
es eingeben, heißt es, dass die Formel lautety ~ x
. Wenn Sie etwas anderes meinen, müssen Sie genauer sein.Antworten:
Betrachten Sie dieses Beispiel:
Ich vermute, die Frage ist, wie man die Regressionsgleichung aus der zusammenfassenden Ausgabe von R herausfindet. Algebraisch lautet die Gleichung für ein einfaches Regressionsmodell: Wir müssen nur die Ausgabe diesen Begriffen zuordnen. Nämlich:
y^i=β^0+β^1xi+ε^iwhere ε∼N(0, σ^2)
summary.lm()
Estimate
Wert in der(Intercept)
Zeile (speziell-0.00761
)Estimate
Wert in derx
Zeile (speziell0.09156
)Residual standard error
(spezifisch0.8155
)Das Einstecken der obigen ergibt: Für eine gründlichere Übersicht, können Sie diesen Thread zu lesen: die Interpretation der R lm () ausgegeben .
y^i=−0.00761 + 0.09156xi + ε^iwhere ε∼N(0, 0.81552)
quelle
lm
und einen Zeichenausdruck wie " " , der für eine solche geeignet ist Planungsaufgabe (daher mein wiederholter Anruf, um zu klären, was sie wollten - was leider nicht getan wurde).Wenn Sie die Ergebnisse anhand Ihrer resultierenden Regressionsgleichung vorhersagen möchten, können Sie die Gleichung manuell erstellen, indem Sie Folgendes eingeben
summary(fit)
(wenn Ihre Regressionsanalyse beispielsweise in einer Variablen mit dem Namen gespeichert istfit
) und die Schätzungen für jeden in Ihrer Gleichung enthaltenen Koeffizienten anzeigen Modell.Wenn Sie beispielsweise eine einfache Regression vom Typ haben und eine Schätzung des ( ) von +0,5 und eine Schätzung der Auswirkung von x auf y ( ) erhalten Mit +1,6 würden Sie die y-Punktzahl einer Person aus ihrer x-Punktzahl vorhersagen, indem Sie berechnen: .β 0 β 1 y = 0,5 + 1,6 xy=β0+β1x+ϵ β0 β1 y^=0.5+1.6x
Dies ist jedoch der schwierige Weg. R verfügt über eine integrierte Funktion,
predict()
mit der Sie anhand eines Modells für einen beliebigen Datensatz automatisch vorhergesagte Werte berechnen können. Beispiel:predict(fit, newdata=data)
Wenn die x-Werte, mit denen Sie die y-Werte vorhersagen möchten, in der Variablen gespeichert sinddata
. (Beachten Sie, dass Sie zum Anzeigen der vorhergesagten Werte für die Stichprobe, für die Ihre Regression durchgeführt wurde, einfachfit$fitted
oderfitted(fit)
eingeben können. Diese geben Ihnen die vorhergesagten, auch als angepassten Werte bezeichneten Werte.)quelle
Wenn Sie die Gleichung anzeigen möchten, in ein Dokument ausschneiden oder einfügen möchten, aber nicht mit dem Zusammensetzen der gesamten Gleichung zu tun haben möchten:
quelle
Aufbauend auf der Antwort von keithpjolley werden die im Trennzeichen verwendeten Pluszeichen durch das tatsächliche Vorzeichen des Koeffizienten ersetzt.
erzeugt das Ergebnis
quelle