भविष्यवाणी अंतराल की गणना


9

मेरे पास निम्न डेटा यहाँ स्थित है । जब हाइड्रोकार्बन प्रतिशत 1.0 होता है, तो मैं पवित्रता पर 95% विश्वास अंतराल की गणना करने का प्रयास कर रहा हूं। आर में, मैं निम्नलिखित दर्ज करता हूं।

> predict(purity.lm, newdata=list(hydro=1.0), interval="confidence", level=.95)
   fit      lwr      upr
1 89.66431 87.51017 91.81845

हालांकि, मैं इस परिणाम को खुद कैसे प्राप्त कर सकता हूं? मैंने निम्नलिखित समीकरण का उपयोग करने का प्रयास किया।

रोंnइw=रों2(1+1एन+(एक्सnइw-एक्स¯)2Σ(एक्समैं-एक्स¯)2)

और मैं आर में निम्नलिखित दर्ज करता हूं।

> SSE_line = sum((purity - (77.863 + 11.801*hydro))^2)
> MSE = SSE_line/18
> t.quantiles <- qt(c(.025, .975), 18)
> prediction = B0 + B1*1
> SE_predict = sqrt(MSE)*sqrt(1+1/20+(mean(hydro)-1)^2/sum((hydro - mean(hydro))^2))
> prediction + SE_predict*t.quantiles
[1] 81.80716 97.52146

मेरे परिणाम आर के पूर्वानुमान कार्य से भिन्न हैं। मैं भविष्यवाणी अंतराल के बारे में क्या गलत समझ रहा हूं?


आप अपने कोड में MSE की गणना कैसे कर रहे हैं?

मैंने गणना को पोस्ट में जोड़ दिया।
— आदर्शवादीक

1
जैसा कि MMJ ने सुझाव दिया है कि आपको कोशिश करनी चाहिएpredict(purity.lm, newdata=list(hydro=1.0), interval="prediction", level=.95)
— vinux

जवाबों:


16

आपका predict.lmकोड फिट किए गए मूल्यों के लिए आत्मविश्वास अंतराल की गणना कर रहा है। आपके हाथ की गणना नए डेटा के लिए पूर्वानुमान अंतराल की गणना कर रही है। यदि आप उसी परिणाम को प्राप्त करना चाहते हैं predict.lmजो आपको हाथ की गणना से मिला है तो बदल interval="confidence"दें interval="prediction"


1

Dpel से अच्छा जवाब। मैं यह जोड़ना चाहूंगा कि आत्मविश्वास अंतराल और भविष्यवाणी अंतराल के बीच का अंतर नीचे जैसा कहा जा सकता है:

विश्वास अंतराल

रोंnइw=रों2(1एन+(एक्सnइw-एक्स¯)2Σ(एक्समैं-एक्स¯)2)

भविष्यवाणी अंतराल

रोंnइw=रों2(1+1एन+(एक्सnइw-एक्स¯)2Σ(एक्समैं-एक्स¯)2)

स्रोत स्लाइड पेज 5/17 और 11/17 देखें

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.