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

Statsmodels लीनियर रिग्रेशन (OLS) को Matplotlib में साफ़-सुथरा कैसे प्लॉट करें?

Statsmodels OLS रिग्रेशन परिणामों को Matplotlib में प्लॉट करें: डेटा पॉइंट्स, ट्रू लाइन, फिटेड वैल्यूज़, और कॉन्फिडेंस इंटरवल।

चरण

  • फिगर साइज़ सेट करें, रैंडम सीड फिक्स करें।
  • सिंथेटिक डेटा जनरेट करें (लीनियर + नॉन-लीनियर टर्म्स)।
  • sm.OLS(y, X).fit() से मॉडल फिट करें।
  • wls_prediction_std से प्रेडिक्शन स्टैंडर्ड एरर और कॉन्फिडेंस इंटरवल प्राप्त करें।
  • ax.plot() से सभी कर्व्स प्लॉट करें: डेटा, ट्रू, OLS फिट, ऊपरी/निचली सीमाएं।
  • लीजेंड जोड़ें और plt.show() करें।

उदाहरण कोड

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()

आउटपुट

OLS फिट, ट्रू फंक्शन, और 95% कॉन्फिडेंस बैंड्स के साथ स्कैटर प्लॉट।

  1. Python में Matplotlib में CDF कैसे प्लॉट करें? Python में Matplotlib में CDF कैसे प्लॉट करें?

    Python में Matplotlib में CDF प्लॉट करने के लिए निम्नलिखित चरणों का पालन करें: चरण फिगर का आकार सेट करें और सबप्लॉट्स के बीच पैडिंग एडजस्ट करें। सैंपल डेटा की संख्या के लिए वेरिएबल N इनिशियलाइज़ करें। NumPy का उपयोग करके रैंडम डेटा बनाएं। data और bins=10 के साथ डेटा सेट का हिस्टोग्राम कंप्यूट करें

  1. Matplotlib में एक्सिस कैसे स्विच करें? Matplotlib में एक्सिस कैसे स्विच करें?

    Matplotlib में एक्सिस स्विच करने के लिए, हम फिगर बना सकते हैं और subplots() मेथड का उपयोग करके दो सबप्लॉट्स जोड़ सकते हैं। कर्व्स प्लॉट करें, x और y डेटा निकालें, और इन डेटा को दूसरी प्लॉट की गई कर्व में सेट करें। चरण NumPy का उपयोग करके x और y डेटा पॉइंट्स बनाएं। फिगर बनाएं और दो सबप्लॉट्स का

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

    मैटप्लॉटलिब में लाइन प्लॉट को एनिमेट करने के लिए, हम निम्नलिखित चरण अपना सकते हैं: subplots() मेथड का उपयोग करके एक फिगर और सबप्लॉट्स का सेट बनाएं। x और y एक्सिस स्केल को सीमित करें। नम्पाई का उपयोग करके x और t डेटा पॉइंट्स बनाएं। कोऑर्डिनेट वैक्टर्स से कोऑर्डिनेट मैट्रिक्स लौटाएं, X2 और T2। plot(