簡體   English   中英

如何獲得R中線性回歸的預測間隔

[英]How to obtain prediction intervals for linear regression in R

這個問題可能源於我不完全了解predict()函數在做什么的事實,但是我想知道是否有一種方法可以訪問基礎的預測數據,以便我可以獲取給定未觀察到的預測間隔值。 這就是我的意思:

x <- rnorm(100,10)
y <- x+rnorm(100,5)

並建立線性模型:

mod1 <- lm(y ~ x)

如果我想要模型估計的置信區間,則可以執行以下操作:

confint(mod1)

並得到

>                  2.5 %    97.5 %
(Intercept) -8.1864342 29.254714
x            0.7578651  1.132339

如果需要的話,可以將這些上下限估計值插入預測方程,以獲取x的某些輸入的上下置信區間。

如果我想做同樣的事,但有一個預測間隔怎么辦? 運用

predict(mod1, interval = "prediction")

看起來它使模型適合具有上下限的現有數據,但是沒有告訴我上下限所基於的參數,因此我可以將其用作不可觀察的值。

(我知道我可以從技術上將一個值添加到predict()命令中,但是我只需要底層參數,這樣我就不必在R中進行預測了)

predict函數接受newdata參數,該參數計算未觀測值的間隔。 這是一個例子

x <- rnorm(100, 10)
y <- x + rnorm(100, 5)
d <- data.frame(x = x, y = y)

mod <- lm(y ~ x, data = d)

d2 <- data.frame(x = c(0.3, 0.6, 0.2))
predict(mod, newdata = d2, interval = 'prediction')

我不知道您所說的基礎參數是什么。 預測間隔的計算涉及一個復雜的公式,您不能將其簡化為幾個簡單的參數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM