文章詳情頁
Python基于numpy模塊實現回歸預測
瀏覽:6日期:2022-07-25 15:45:48
代碼如下
import numpy as npfrom matplotlib import pyplot as plt# 用numpy生成數據t ,yt = np.arange(1,10,1)y = 0.9 * t + np.sin(t)model = np.polyfit(t, y ,deg=1) # np.polyfit是numpy提供的加分分析方法,deg=1,指定模型為1階的,返回值model為獲得的模型t2 = np.arange(-2,12,0.5) # 再生成一個間隔為0.5的序列ypredict = np.polyval(model, t2) # 由np.polyval預測y值序列plt.plot(t, y, 'o', t2, ypredict, ’x’)plt.show()
上面的一段代碼利用numpy生成數據序列,并實現了1階回歸,并畫出預測效果圖,圖形如下:
將代碼改一下,實現2階、3階回歸預測,只需要model = np.polyfit(t, y, deg =2)即可,同理3階模型就把deg改為3即可。
2階效果圖和3階效果圖分別如下:
需要說明的是,并不是擬合的階數越高,模型越好,本例使用2階擬合效果比較好,如果使用3階,會出現“過擬合”
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。
相關文章:
排行榜
