[英]R predict() function returning too many values
我正在使用r預測函數,它返回的值也比我預期的要多。 我為數據創建了線性模型,以便根據PKWH,MDT和MDT2預測MDC,然后為輸入值創建了新數據,並將其輸入到預測函數中。 實用程序的原始數據對於MDC,PKWH,MDT和MDT2的每一列都有24個值。
fit2 <- lm(MDC ~ MDT + MDT2 + PKWH*(1 + MDT + MDT2), data =
utility)
predict <- predict(fit2, data = data.frame(PKWH = 9, MDT = 75, MDT2
= 5625))
我期望predict()函數為PKWH = 9 |輸入產生1個預測值。 MDT = 75 | MDT2 = 5625,但它給了我這24個值。
1 2 3 4 5 6 7
56.67781 51.66653 45.05200 42.12583 38.98647 38.80904 42.60033
8 9 10 11 12 13 14
46.86545 49.51928 54.15163 61.54441 68.00122 49.17722 45.27917
15 16 17 18 19 20 21
42.88154 40.93468 38.39330 37.80963 39.47550 41.58780 42.94447
22 23 24
46.25884 49.27053 53.98732
另外,當我插入新的輸入值以使用線性模型中的系數計算預測值時,我得到55.42165,該值未在來自predict()函數的24個值的列表中找到。
首先,我不會將您的結果predict
命名為-您要將其保存為函數。 你需要
predicted_data <- predict(fit2, newdata = data.frame(PKWH = 9, MDT = 75, MDT2
= 5625))
之所以不會引發錯誤,是因為predict
在data
輸入的末尾有一個包羅萬象( ...
),但是它為您提供了適合模型的數據的預測。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.