हालांकि पॉलीफ़िट() का उपयोग करके बहुपद वक्र फिटिंग पायथन में आसानी से उपलब्ध है, यह मार्गदर्शिका घातीय और लघुगणकीय वक्र के तरीकों की खोज करती है फिटिंग।
फिट करने के लिए फॉर्म y = A B लॉग x की एक पंक्ति, बस लॉग x के विरुद्ध y का एक बहुपद फिट निष्पादित करें।
import numpy as np
x = np.array([1, 7, 20, 50, 79])
y = np.array([10, 19, 30, 35, 51])
coeffs = np.polyfit(np.log(x), y, 1)
print("y ≈", coeffs[1], "log(x) ", coeffs[0]) # y ≈ 8.46 log(x) 6.62
एक फिट करने के लिए y = Ae^{Bx} के रूप की रेखा, दोनों पक्षों का लघुगणक लें और लघुगणक का बहुपद फिट करें y विरुद्ध x.
x = np.array([10, 19, 30, 35, 51])
y = np.array([1, 7, 20, 50, 79])
coeffs = np.polyfit(x, np.log(y), 1)
print("y ≈ exp(", coeffs[1], ") * exp(", coeffs[0], " * x) = 0.670 * exp(0.105 * x)")
बेहतर सटीकता के लिए , पॉलीफ़िट() में w कीवर्ड का उपयोग करके y के अनुपात में वज़न का लाभ उठाएं।
coeffs = np.polyfit(x, np.log(y), 1, w=np.sqrt(y))
print("y ≈ exp(", coeffs[1], ") * exp(", coeffs[0], " * x) = 4.12 * exp(0.0601 * x)")
ध्यान दें कि अधिकांश स्प्रेडशीट और वैज्ञानिक कैलकुलेटर एप्लिकेशन घातीय प्रतिगमन के लिए एक अभारित सूत्र का उपयोग करते हैं, इसलिए यदि संगतता वांछित है तो वजन से बचें।
यदि scipy उपलब्ध है, तो परिवर्तनों के बिना फिटिंग मॉडल के लिए curve_fit का उपयोग करें।
from scipy.optimize import curve_fit
# Logarithmic fitting
coeffs, _ = curve_fit(lambda t, a, b: a b * np.log(t), x, y)
print("y ≈", coeffs[1], "log(x) ", coeffs[0]) # y ≈ 6.62 8.46 log(x)
# Exponential fitting with initial guess
coeffs, _ = curve_fit(lambda t, a, b: a * np.exp(b * t), x, y, p0=(4, 0.1))
print("y ≈", coeffs[0], "exp(", coeffs[1], " * x) = 4.88 exp(0.0553 x)")
एक प्रारंभिक अनुमान प्रदान करके, cur_fit पहुंच सकता है घातीय फिटिंग के लिए वांछित स्थानीय न्यूनतम, जिसके परिणामस्वरूप रूपांतरित पॉलीफिट विधि की तुलना में अधिक सटीक फिट होता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3