Fortunatamente per te, hai solo una covariata continua. Pertanto, puoi semplicemente creare quattro (cioè 2 SEX x 2 ETÀ), ciascuno con la relazione tra BID e . In alternativa, è possibile creare una trama con quattro linee diverse (è possibile utilizzare stili di linea, pesi o colori diversi per distinguerli). È possibile ottenere queste linee previste risolvendo l'equazione di regressione in ciascuna delle quattro combinazioni per un intervallo di valori BID. p(Y=1)
Una situazione più complicata è quella in cui hai più di una covariata continua. In un caso come questo, spesso c'è una particolare covariata che è "primaria" in un certo senso. Quella covariata può essere utilizzata per l'asse X. Quindi risolvi per diversi valori pre-specificati delle altre covariate, in genere la media e +/- 1SD. Altre opzioni includono vari tipi di grafici 3D, complotti o grafici interattivi.
La mia risposta a una domanda diversa qui contiene informazioni su una serie di grafici per esplorare i dati in più di 2 dimensioni. Il tuo caso è essenzialmente analogo, tranne per il fatto che sei interessato a presentare i valori previsti del modello, anziché i valori grezzi.
Aggiornare:
Ho scritto un semplice esempio di codice in R per creare questi grafici. Consentitemi di notare alcune cose: poiché l '"azione" si svolge in anticipo, ho eseguito il BID solo attraverso 700 (ma non esitate a estenderlo al 2000). In questo esempio, sto usando la funzione che specifichi e prendo la prima categoria (cioè donne e giovani) come categoria di riferimento (che è l'impostazione predefinita in R). Come osserva @whuber nel suo commento, I modelli LR sono lineari nelle probabilità del log, quindi è possibile utilizzare il primo blocco di valori previsti e tracciare come si potrebbe fare con la regressione OLS se si sceglie. Il logit è la funzione di collegamento, che consente di connettere il modello alle probabilità; il secondo blocco converte le probabilità del registro in probabilità tramite l'inverso della funzione logit, ovvero esponenziando (trasformando in probabilità) e quindi dividendo le probabilità per 1 + probabilità. (Discuto la natura delle funzioni di collegamento e questo tipo di modello qui , se vuoi maggiori informazioni.)
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")
Il che produce la seguente trama:
Queste funzioni sono sufficientemente simili che l'approccio della trama a quattro parallele che ho delineato inizialmente non è molto distintivo. Il codice seguente implementa il mio approccio "alternativo":
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"))
producendo a sua volta, questa trama: