[英]Residual Plot for multivariate regression in Time Series, with time on X axis in R
我有一個時間序列的數據框。 我正在使用函數lm
來構建多元回歸模型。
linearmodel <- lm(Y~X1+X2+X3, data = data)
lm()
對象作為輸入。car::residualPlot
) 在 Y 軸上給出殘差,在 Y 軸上給出擬合值。lm()
與時間無關。 因此,如果殘差在 Y 軸上的順序與數據輸入的順序相同,而 X 軸上沒有任何內容,我可以接受plot<- plotresidualsinorder(linearmodels)
應該以與數據輸入相同的順序給我 Y 軸上的殘差嗎?我的研究使我找到了汽車包裝,它本身就很棒,但沒有解決我的問題的功能。
非常感謝您的幫助。
您可以使用殘差圖信息。 對於建議的解決方案,我們需要將lm
函數應用於通過變量X1+X2+X3
描述Y
變量的公式,並將線性回歸模型保存在新的linearmodel
模型變量中。 最后,我們用resid
函數計算殘差。 在您的情況下,以下解決方案可以代表您的問題。
建議的解決方案:
linearmodel <- lm(Y~X1+X2+X3, data = data)
lm_resid <- resid(linearmodel)
plot(data$X1+X2+X3, lm_resid,
ylab="Residuals", xlab="Time",
main="Data")
abline(0, 0)
有關resid
函數如何工作的任何幫助,您可以嘗試:
help(resid)
Calisto 的解決方案會起作用,但還有一個更簡單直接的解決方案。 lm 函數已經為您提供了回歸殘差。 所以你可以簡單地通過:
plot(XTime, linearmodel$residuals, main = "Residuals")
XTime 是數據集的 Date 變量,也許您可能需要使用POSIX
函數對其進行格式化: https ://www.rdocumentation.org/packages/base/versions/3.6.2/topics/as.POSIX*
根據需要添加參數在 R-shiny 上共享。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.