中文字幕理论片,69视频免费在线观看,亚洲成人app,国产1级毛片,刘涛最大尺度戏视频,欧美亚洲美女视频,2021韩国美女仙女屋vip视频

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
使用Python實(shí)現(xiàn)數(shù)據(jù)的一維插值

對現(xiàn)有數(shù)據(jù)進(jìn)行擬合或插值是數(shù)學(xué)分析中常見的方式。

  • 通過分析現(xiàn)有數(shù)據(jù),得到一個(gè)連續(xù)的函數(shù)(也就是曲線);或者更密集的離散方程與已知數(shù)據(jù)互相吻合,這個(gè)過程叫做擬合。

  • 通過已知的、離散的數(shù)據(jù)點(diǎn),在范圍內(nèi)推求新數(shù)據(jù)點(diǎn)的過程或方法則叫做插值

簡單來說,插值與擬合最大的區(qū)別就是,插值所獲得的曲線一定要通過數(shù)據(jù)點(diǎn),而擬合需要的是總體上最接近的結(jié)果。

所以說要實(shí)現(xiàn)插值算法,我們的目標(biāo)是通過給定的x值和y值,創(chuàng)建一個(gè)函數(shù)y=f(x),可以在該函數(shù)中插入想要的任何值a并獲得相應(yīng)的值y=f(a)。

例如給定x=[0:5:5],y=x^2,在python中畫出散點(diǎn)圖為

import numpy as npimport matplotlib.pyplot as pltx_data = np.linspace(0,5,5)y_data = x_data**2plt.scatter(x_data,y_data)plt.show()

假如我們想獲取x=2的值,可以看到圖中沒有對應(yīng)的數(shù)據(jù)點(diǎn),因此無法直接獲得,所以需要用到插值,而最簡單的插值方式為線性插值,就是通過直線連接數(shù)據(jù)點(diǎn)。

這樣通過scipy.interpolate.interp1d()的函數(shù)即可進(jìn)行一維插值。

from scipy.interpolate import interp1dx_data = np.linspace(0,5,5)y_data = x_data**2y_f = interp1d(x_data, y_data, 'linear')print(y_f(2))

通過上述代碼使用線性插值,運(yùn)行代碼后求出x=2時(shí)y的值為4.375,由于線性插值是通過相鄰兩點(diǎn)的連線來進(jìn)行插值,無法考慮到其他數(shù)據(jù)點(diǎn),我們都知道x=2時(shí)y=x^2的值為4,這里的插值結(jié)果明顯有問題。

于是使用2次多項(xiàng)式的方式進(jìn)行插值,可以得到y(tǒng)(2)=4

y_f = interp1d(x_data, y_data,'quadratic')x = np.linspace(0,5,100)y = y_f(x)plt.plot(x,y,'--')plt.show()print(y_f(2))

上述案例的數(shù)據(jù)較為簡單,我們可以輕易地判斷插值后的數(shù)據(jù)是否準(zhǔn)確,但是對于復(fù)雜的數(shù)據(jù),選擇合適的插值方式就變得十分重要。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
寫SCI論文就用SciPy
Python數(shù)據(jù)分析庫 Scipy庫,科學(xué)計(jì)算與數(shù)據(jù)分析的利器!
Python進(jìn)階之Matplotlib入門(一)
UC頭條:Python數(shù)據(jù)可視化入門:Matplotlib初級使用指南
python插值
4
更多類似文章 >>
生活服務(wù)
熱點(diǎn)新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服