簡體   English   中英

R預測()函數返回太多值

[英]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))

之所以不會引發錯誤,是因為predictdata輸入的末尾有一個包羅萬象( ... ),但是它為您提供了適合模型的數據的預測。

暫無
暫無

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

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