खोज…


परिचय

डेटा बिंदुओं के एक समूह के लिए एक पंक्ति (या अन्य फ़ंक्शन) फिटिंग।

Np.polyfit का उपयोग करना

हम एक डेटासेट बनाते हैं जिसे हम फिर एक सीधी रेखा $ f (x) = mx + c $ के साथ फिट करते हैं।

npoints = 20
slope = 2
offset = 3
x = np.arange(npoints)
y = slope * x + offset + np.random.normal(size=npoints)
p = np.polyfit(x,y,1)           # Last argument is degree of polynomial

यह देखने के लिए कि हमने क्या किया है:

import matplotlib.pyplot as plt
f = np.poly1d(p)                # So we can call f(x)
fig = plt.figure()
ax  = fig.add_subplot(111)
plt.plot(x, y, 'bo', label="Data")
plt.plot(x,f(x), 'b-',label="Polyfit")
plt.show()

नोट: यह उदाहरण https://docs.scipy.org/doc/numpy/reference/generated/numpy.polyfit.html पर काफी बारीकी से दस्तावेजीकरण करता है।

Np.linalg.lstsq का उपयोग करना

हम पॉलीफ़िट के साथ समान डेटासेट का उपयोग करते हैं:

npoints = 20
slope = 2
offset = 3
x = np.arange(npoints)
y = slope * x + offset + np.random.normal(size=npoints)

अब, हम रैखिक समीकरणों की प्रणाली को कम करके एक हल खोजने की कोशिश करते हैं। ए = सी को न्यूनतम करके | cA b | ** 2

import matplotlib.pyplot as plt # So we can plot the resulting fit
A = np.vstack([x,np.ones(npoints)]).T
m, c = np.linalg.lstsq(A, y)[0] # Don't care about residuals right now
fig = plt.figure()
ax  = fig.add_subplot(111)
plt.plot(x, y, 'bo', label="Data")
plt.plot(x, m*x+c, 'r--',label="Least Squares")
plt.show()

नोट: यह उदाहरण https://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.lstsq.html पर काफी बारीकी से दस्तावेजीकरण करता है।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow