Attualmente sto cercando di disegnare l'intervallo di confidenza per un modello lineare. Ho scoperto che dovrei usare predict.lm() per questo, ma ho alcuni problemi a capire veramente la funzione e non mi piace usare le funzioni senza sapere cosa sta succedendo. Ho trovato diversi how-to su questo argomento, ma solo con il codice R corrispondente, senza una vera spiegazione. Questa è la funzione stessa:Predict.lm() in R - come ottenere bande di predizione non costanti attorno ai valori adattati
## S3 method for class 'lm'
predict(object, newdata, se.fit = FALSE, scale = NULL, df = Inf,
interval = c("none", "confidence", "prediction"),
level = 0.95, type = c("response", "terms"),
terms = NULL, na.action = na.pass,
pred.var = res.var/weights, weights = 1, ...)
Ora, quello che ho difficoltà a capire:
1) newdata
An optional data frame in which to look for variables
with which to predict. If omitted, the fitted values are used.
Tutti sembrano usare NewData per questo, ma io non riesco a capire perché. Per calcolare l'intervallo di confidenza, ho ovviamente bisogno dei dati per cui questo intervallo è (come il numero di osservazioni, la media di x ecc.), Quindi non può essere ciò che si intende da esso. Ma allora: che cosa significa?
2) interval
Type of interval calculation.okay .. ma che cosa è "nessuno" per?
3a) type
Type of prediction (response or model term).3b) terms
If type="terms", which terms (default is all terms)3a: Posso dal che ottenere l'intervallo di confidenza per una variabile specifica nel mio modello? E se sì, cos'è allora 3b? Se riesco a specificare il termine in 3a, non avrebbe senso farlo di nuovo in 3b ... quindi suppongo di sbagliarmi di nuovo, ma non riesco a capire perché.
Immagino che alcuni di voi potrebbero pensare: Perché non provarlo? E vorrei (anche se forse non risolvesse tutto qui), ma in questo momento non so come. Dato che non so a cosa servono i nuovi dati, non so come usarli e, se ci provo, non ho il giusto intervallo di confidenza. In qualche modo è molto importante come scegli questi dati, ma io non capisco!
EDIT: Voglio aggiungere che la mia intenzione è capire come predict.lm funziona. Con ciò intendo che non capisco se funziona nel modo in cui penso che lo faccia. Cioè calcola y-hat (valori previsti) e di usi aggiunge/sottrae per ciascuno i limiti upr/lwr dell'intervallo per calcolare diversi datapoint (che assomigliano a una linea di confidenza quindi) ?? Poi vorrei capire perché è necessario avere la stessa lunghezza nei nuovi dati come nel modello lineare.
La sezione Dettagli della documentazione tratta l'argomento 'newdata' per una certa lunghezza. Quale parte di questa discussione rimane confusa? – joran
Suppongo che questo sia ciò che mi confonde: "predict.lm produce valori previsti, ottenuti valutando la funzione di regressione nel frame newdata" (nella spiegazione generale) e "Se newdata è omesso, le previsioni si basano sui dati utilizzati per il in forma." per i nuovi dati Perché dovrei provare ad ottenere intervalli di confidenza che non sono collegati nella mia regressione effettiva? Ecco come ho capito questa frase, quindi questo è ciò che mi confonde. Poi spiega come vengono gestiti i valori mancanti in quel caso, ma faccio fatica con la prima parte già! – lisa
Potrebbe essere interessato agli intervalli _prediction_ per nuove osservazioni. – joran