python數(shù)據(jù)擬合之scipy.optimize.curve_fit解讀
更新時間:2022年12月14日 08:53:09 作者:Dylan_zlh
這篇文章主要介紹了python數(shù)據(jù)擬合之scipy.optimize.curve_fit解讀,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
scipy.optimize.curve_fit解讀
相比numpy庫的多項式擬合函數(shù)polyfit,scipy.optimize模塊中的函數(shù)curve_fit能夠擬合的函數(shù)范圍更廣,不局限于多項式函數(shù)
已有數(shù)據(jù)
# 導入模塊 import numpy as np import matplotlib.pyplot as plt from scipy.optimize import curve_fit
# 導入數(shù)據(jù) x = np.linspace(0,1.0,11) y = np.array([-0.447, 1.978, 3.28, 6.16, 7.08, 7.34, 7.66, 9.56, 9.48, 9.30, 11.2])
# 擬合二次多項式 f = lambda x, a, b, c: a*x**2 + b*x + c # popt為擬合參數(shù),pcov為參數(shù)的協(xié)方差矩陣 popt, pcov = curve_fit(f, x, y) print("擬合的參數(shù)值a,b,c分別為:", popt) # x=0.25, 0.35的預測值 print("x=0.25, 0.35的預測值為", f(np.array([0.25, 0.35]), *popt))
擬合的參數(shù)值a,b,c分別為: [-9.81083901 20.12929291 -0.03167108]
x=0.25, 0.35的預測值為 [4.38747471 5.81175366]
plt.rc('font', size=15) plt.plot(x, y, '*') # 觀測值數(shù)據(jù)的散點圖 # 擬合數(shù)據(jù)的折線圖 plt.plot(np.linspace(0.0, 1.0, 50), f(np.linspace(0.0, 1.0, 50), *popt), '-') plt.show()
總結
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
下載python中Crypto庫報錯:ModuleNotFoundError: No module named ‘Cry
Crypto不是自帶的模塊,需要下載。下面這篇文章主要給大家介紹了關于下載python中Crypto庫報錯:ModuleNotFoundError: No module named 'Crypto'的解決方法,文中通過圖文介紹的非常詳細,需要的朋友可以參考下。2018-04-04Python使用Apache Kafka時Poll拉取速度慢的解決方法
在使用Apache Kafka時,poll方法拉取消息速度慢常見于網(wǎng)絡延遲、消息大小過大、消費者配置不當或高負載情況,本文提供了優(yōu)化消費者配置、并行消費、優(yōu)化消息處理邏輯和監(jiān)控調(diào)試的解決方案,并附有Python代碼示例和相關類圖、序列圖以幫助理解和實現(xiàn)2024-09-09在python里創(chuàng)建一個任務(Task)實例
這篇文章主要介紹了在python里創(chuàng)建一個任務(Task)實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-04-04