p ( Y= 1 )
Eine kompliziertere Situation ist, wenn Sie mehr als eine kontinuierliche Kovariate haben. In einem solchen Fall gibt es oft eine bestimmte Kovariate, die in gewissem Sinne „primär“ ist. Diese Kovariate kann für die X-Achse verwendet werden. Dann lösen Sie nach mehreren vordefinierten Werten der anderen Kovariaten auf, in der Regel dem Mittelwert und +/- 1SD. Weitere Optionen sind verschiedene Arten von 3D-Plots, Coplots oder interaktiven Plots.
Meine Antwort auf eine andere Frage hier hat Informationen über eine Reihe von Grundstücken für Daten in mehr als zwei Dimensionen zu erkunden. Ihr Fall ist im Wesentlichen analog, mit der Ausnahme, dass Sie die vorhergesagten Werte des Modells anstelle der Rohwerte darstellen möchten.
Aktualisieren:
Ich habe einige einfache Beispielcodes in R geschrieben, um diese Diagramme zu erstellen. Lassen Sie mich ein paar Dinge anmerken: Da die 'Aktion' früh stattfindet, habe ich BID nur bis 700 ausgeführt (es steht mir jedoch frei, sie auf 2000 zu verlängern). In diesem Beispiel verwende ich die von Ihnen angegebene Funktion und verwende die erste Kategorie (dh weiblich und jung) als Referenzkategorie (die in R die Standardeinstellung ist). Wie @whuber in seinem Kommentar festhältLR-Modelle haben eine lineare logarithmische Wahrscheinlichkeit. Daher können Sie den ersten Block mit vorhergesagten Werten und Plots verwenden, wie Sie es bei der OLS-Regression tun würden, wenn Sie dies wünschen. Das Logit ist die Verknüpfungsfunktion, mit der Sie das Modell mit Wahrscheinlichkeiten verbinden können. Der zweite Block konvertiert Log-Quoten in Wahrscheinlichkeiten über die Umkehrung der Logit-Funktion, das heißt durch Exponentieren (Verwandeln in Quoten) und anschließendes Teilen der Quoten durch 1 + Quoten. (Ich bespreche die Art der Link-Funktionen und diese Art von Modell hier , wenn Sie weitere Informationen wünschen.)
BID = seq(from=0, to=700, by=10)
logOdds.F.young = -3.92 + .014*BID
logOdds.M.young = -3.92 + .014*BID + .25*1
logOdds.F.old = -3.92 + .014*BID + .15*1
logOdds.M.old = -3.92 + .014*BID + .25*1 + .15*1
pY.F.young = exp(logOdds.F.young)/(1+ exp(logOdds.F.young))
pY.M.young = exp(logOdds.M.young)/(1+ exp(logOdds.M.young))
pY.F.old = exp(logOdds.F.old) /(1+ exp(logOdds.F.old))
pY.M.old = exp(logOdds.M.old) /(1+ exp(logOdds.M.old))
windows()
par(mfrow=c(2,2))
plot(x=BID, y=pY.F.young, type="l", col="blue", lwd=2,
ylab="Pr(Y=1)", main="predicted probabilities for young women")
plot(x=BID, y=pY.M.young, type="l", col="blue", lwd=2,
ylab="Pr(Y=1)", main="predicted probabilities for young men")
plot(x=BID, y=pY.F.old, type="l", col="blue", lwd=2,
ylab="Pr(Y=1)", main="predicted probabilities for old women")
plot(x=BID, y=pY.M.old, type="l", col="blue", lwd=2,
ylab="Pr(Y=1)", main="predicted probabilities for old men")
Wodurch sich folgendes Diagramm ergibt:
Diese Funktionen sind hinreichend ähnlich, so dass der eingangs skizzierte Ansatz der vierparallelen Diagramme nicht sehr charakteristisch ist. Der folgende Code implementiert meinen "alternativen" Ansatz:
windows()
plot(x=BID, y=pY.F.young, type="l", col="red", lwd=1,
ylab="Pr(Y=1)", main="predicted probabilities")
lines(x=BID, y=pY.M.young, col="blue", lwd=1)
lines(x=BID, y=pY.F.old, col="red", lwd=2, lty="dotted")
lines(x=BID, y=pY.M.old, col="blue", lwd=2, lty="dotted")
legend("bottomright", legend=c("young women", "young men",
"old women", "old men"), lty=c("solid", "solid", "dotted",
"dotted"), lwd=c(1,1,2,2), col=c("red", "blue", "red", "blue"))
Diese Handlung produziert wiederum: