Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

Matplotlib में statsmodels रैखिक प्रतिगमन (OLS) को सफाई से कैसे प्लॉट करें?

हम आँकड़ों के मॉडल रैखिक प्रतिगमन (OLS) को एक गैर-रेखीय वक्र के साथ लेकिन रैखिक डेटा के साथ प्लॉट कर सकते हैं।

कदम

  • फिगर साइज सेट करें और सबप्लॉट्स के बीच और आसपास पैडिंग को एडजस्ट करें।

  • एक नया बनाने के लिए, हम बीज () . का उपयोग कर सकते हैं विधि।

  • नमूना और सिग्मा चरों की संख्या प्रारंभ करें।

  • रैखिक डेटा बिंदु बनाएं x, X, बीटा, t_true , y और res सुन्न का उपयोग करना।

  • Res एक साधारण कम वर्ग वर्ग उदाहरण है।

  • मानक विचलन की गणना करें। भविष्यवाणी के लिए कॉन्फिडेंस इंटरवल WLS और OLS पर लागू होता है, सामान्य GLS पर नहीं, यानी स्वतंत्र रूप से लेकिन समान रूप से वितरित टिप्पणियों पर नहीं।

  • subplot() . का उपयोग करके एक आकृति और सबप्लॉट का एक सेट बनाएं विधि।

  • प्लॉट () . का उपयोग करके सभी वक्रों को प्लॉट करें (x, y), (x, y_true), (x, res.fittedvalues), (x, iv_u) के साथ विधि और (x, iv_l) डेटा बिंदु।

  • कथा को कथानक पर रखें।

  • आकृति प्रदर्शित करने के लिए, दिखाएँ () . का उपयोग करें विधि।

उदाहरण

import numpy as np
from matplotlib import pyplot as plt
from statsmodels import api as sm
from statsmodels.sandbox.regression.predstd import wls_prediction_std
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
np.random.seed(9876789)
nsample = 50
sig = 0.5
x = np.linspace(0, 20, nsample)
X = np.column_stack((x, np.sin(x), (x - 5) ** 2, np.ones(nsample)))
beta = [0.5, 0.5, -0.02, 5.]
y_true = np.dot(X, beta)
y = y_true + sig * np.random.normal(size=nsample)
res = sm.OLS(y, X).fit()
prstd, iv_l, iv_u = wls_prediction_std(res)
fig, ax = plt.subplots()
ax.plot(x, y, 'o', label="data")
ax.plot(x, y_true, 'b-', label="True")
ax.plot(x, res.fittedvalues, 'r--.', label="OLS")
ax.plot(x, iv_u, 'r--')
ax.plot(x, iv_l, 'r--')
ax.legend(loc='best')
plt.show()

आउटपुट

Matplotlib में statsmodels रैखिक प्रतिगमन (OLS) को सफाई से कैसे प्लॉट करें?


  1. पायथन में Matplotlib में cdf कैसे प्लॉट करें?

    cdf plot को प्लॉट करने के लिए पायथन में matplotlib में, हम निम्नलिखित कदम उठा सकते हैं - फिगर साइज सेट करें और सबप्लॉट्स के बीच और आसपास पैडिंग को एडजस्ट करें। वैरिएबल को प्रारंभ करें N नमूना डेटा की संख्या के लिए। numpy का उपयोग करके यादृच्छिक डेटा बनाएं। डेटा . के साथ डेटा के एक सेट के

  1. Matplotlib में कुल्हाड़ियों को कैसे स्विच करें?

    Matplotlib में कुल्हाड़ियों को स्विच करने के लिए, हम एक आकृति बना सकते हैं और सबप्लॉट्स () विधि का उपयोग करके दो सबप्लॉट जोड़ सकते हैं। वक्र प्लॉट करें, x और y डेटा निकालें, और इन डेटा को दूसरे प्लॉट किए गए वक्र में सेट करें। कदम numpy का उपयोग करके x और y डेटा पॉइंट बनाएं। एक आकृति बनाएं और द

  1. Matplotlib में एक लाइन प्लॉट को कैसे चेतन करें?

    Matplotlib में लाइन प्लॉट को चेतन करने के लिए, हम निम्नलिखित कदम उठा सकते हैं - सबप्लॉट्स () . का उपयोग करके एक फिगर और सबप्लॉट का एक सेट बनाएं विधि। x और y अक्ष पैमाने को सीमित करें। numpy का उपयोग करके x और t डेटा बिंदु बनाएं। निर्देशांक सदिशों, X2 और T2 से निर्देशांक मैट्रिक्स लौटाएं।