Python基于numpy模塊實(shí)現(xiàn)回歸預(yù)測
代碼如下
import numpy as npfrom matplotlib import pyplot as plt# 用numpy生成數(shù)據(jù)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ù)測y值序列plt.plot(t, y, 'o', t2, ypredict, ’x’)plt.show()
上面的一段代碼利用numpy生成數(shù)據(jù)序列,并實(shí)現(xiàn)了1階回歸,并畫出預(yù)測效果圖,圖形如下:
將代碼改一下,實(shí)現(xiàn)2階、3階回歸預(yù)測,只需要model = np.polyfit(t, y, deg =2)即可,同理3階模型就把deg改為3即可。
2階效果圖和3階效果圖分別如下:
需要說明的是,并不是擬合的階數(shù)越高,模型越好,本例使用2階擬合效果比較好,如果使用3階,會出現(xiàn)“過擬合”
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. PHP中Session會話的使用和分析2. 10個提供免費(fèi)PHP腳本下載的網(wǎng)站3. python 爬取嗶哩嗶哩up主信息和投稿視頻4. php5.6不能擴(kuò)展redis.so的解決方法5. Java 基于UDP協(xié)議實(shí)現(xiàn)消息發(fā)送6. PHP擴(kuò)展之APC——Alternative PHP Cache(可選PHP緩存)7. js實(shí)現(xiàn)跳一跳小游戲8. PHP設(shè)計模式(四)原型模式Prototype實(shí)例詳解【創(chuàng)建型】9. SpringBoot 開發(fā)提速神器 Lombok+MybatisPlus+SwaggerUI10. Python編寫nmap掃描工具
