日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

python数学工具(一)

發(fā)布時間:2023/12/15 综合教程 30 生活家
生活随笔 收集整理的這篇文章主要介紹了 python数学工具(一) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

python 數(shù)學(xué)工具包括:

1.函數(shù)的逼近

  1.1.回歸

  1.2.插值

2.凸優(yōu)化
3.積分
4.符號數(shù)學(xué)

本文介紹函數(shù)的逼近的回歸方法

1.作為基函數(shù)的單項式

對函數(shù)的擬合

首先定義函數(shù)并且可視化

import numpy as np
import matplotlib.pyplot as plt
import pandas as pd

def f(x):
    return np.sin(x)+0.5*x

x=np.linspace(-2*np.pi,2*np.pi,50)
plt.plot(x,f(x),'b')
plt.xlabel('x')
plt.ylabel('f(x)')
plt.grid(True)

 

先用一次函數(shù)擬合

reg=np.polyfit(x,f(x),deg=1)
ry=np.polyval(reg,x)
plt.plot(x,f(x),'b',label='f(x)')
plt.grid(True)
plt.plot(x,ry,'r.',label='reg')
plt.legend(loc=0)

  

再用高次函數(shù)進行擬合

reg=np.polyfit(x,f(x),deg=16)
ry=np.polyval(reg,x)
plt.plot(x,f(x),'b',label='f(x)')
plt.grid(True)
plt.plot(x,ry,'r.',label='reg')
plt.legend(loc=0)

  

擬合效果的檢查

print('平均誤差:',sum((ry-f(x))**2)/len(x))

平均誤差: 3.16518401761e-13

  

np.allclose(ry,f(x))

True

 

2.單獨的基函數(shù)

首先常見一個空的矩陣,然后為任一行添加函數(shù)

mat=np.zeros((3+1,len(x)))
mat[3,:]=x**3
mat[2,:]=x**2
mat[1,:]=x
mat[0,:]=1

reg=np.linalg.lstsq(mat.T,f(x))

#輸出系數(shù)
reg[0]
array([  1.52685368e-14,   5.62777448e-01,  -1.11022302e-15,
        -5.43553615e-03])


  

#輸出圖形
ry=np.dot(reg[0],mat)


plt.plot(x,f(x),'b',label='f(x)')
plt.plot(x,ry,'r.',label='reg')
plt.grid(True)
plt.legend(loc=0)

  

對每行的基函數(shù)進行變換:

mat=np.zeros((3+1,len(x)))
mat[3,:]=np.sin(x)
mat[2,:]=x**2
mat[1,:]=x
mat[0,:]=1

reg=np.linalg.lstsq(mat.T,f(x))

ry=np.dot(reg[0],mat)


plt.plot(x,f(x),'b',label='f(x)')
plt.plot(x,ry,'r.',label='reg')
plt.grid(True)
plt.legend(loc=0)

  

3.多維情形

def fm(x,y):
    return np.sin(x) + 0.25 * x + np.sqrt(y) + 0.05**y*2


x = np.linspace(0, 10, 20)
y = np.linspace(0, 10, 20)
x, y = np. meshgrid( x, y)

Z = fm(x,y)
x = x.flatten()
y = x. flatten()

import statsmodels.api as sm

matrix=np.zeros((len(x),6+1))

matrix[:,6] = np.sqrt(y)
matrix[:,5] = np.sin(x)
matrix[:,4] = y**2
matrix[:,3] = y**2
matrix[:,2] = y
matrix[:,1] = x
matrix[:,0] = 1

res=sm.OLS(fm(x,y),matrix).fit()

print(res.summary().as_text())

  

                         OLS Regression Results                            
==============================================================================
Dep. Variable:                      y   R-squared:                       0.999
Model:                            OLS   Adj. R-squared:                  0.999
Method:                 Least Squares   F-statistic:                 9.605e+04
Date:                Tue, 31 Jul 2018   Prob (F-statistic):               0.00
Time:                        10:51:36   Log-Likelihood:                 661.47
No. Observations:                 400   AIC:                            -1313.
Df Residuals:                     395   BIC:                            -1293.
Df Model:                           4                                         
Covariance Type:            nonrobust                                         
==============================================================================
                 coef    std err          t      P>|t|      [0.025      0.975]
------------------------------------------------------------------------------
const          1.9548      0.010    193.732      0.000       1.935       1.975
x1             0.5891      0.005    111.546      0.000       0.579       0.600
x2             0.5891      0.005    111.546      0.000       0.579       0.600
x3            -0.0150      0.000    -54.014      0.000      -0.016      -0.014
x4            -0.0150      0.000    -54.014      0.000      -0.016      -0.014
x5             0.9533      0.004    251.168      0.000       0.946       0.961
x6            -1.6190      0.020    -79.979      0.000      -1.659      -1.579
==============================================================================
Omnibus:                        4.352   Durbin-Watson:                   0.880
Prob(Omnibus):                  0.113   Jarque-Bera (JB):                4.214
Skew:                          -0.208   Prob(JB):                        0.122
Kurtosis:                       2.717   Cond. No.                     4.93e+17
==============================================================================

 

總結(jié)

以上是生活随笔為你收集整理的python数学工具(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产精九九网站漫画 | 蜜桃精品久久久久久久免费影院 | 天天想你免费观看完整版高清电影 | 久久桃色 | 色.www| 国产日本欧美一区二区 | 天天操欧美 | 91一区二区在线观看 | 四虎精品一区 | 99福利在线 | 日韩在线免费看 | 欧美第一页在线 | 国产欧美在线精品日韩 | 亚洲福利精品视频 | a级无毛片 | 黄页免费网站 | 欧美自拍视频 | 日韩视频在线免费观看 | 欧美色亚洲色 | 嫩草懂你| 天堂俺去俺来也www 欧美大片在线播放 | 亚洲精品一区二区二区 | 国产精品精 | 东京热一区二区三区四区 | av作品在线观看 | 欧美成人一区在线观看 | 99热这里只有精品3 成年人黄色网址 | 毛片av在线观看 | 超污巨黄的小短文 | 亚洲成人a√ | 亚洲淫欲 | 涩涩资源网 | 制服.丝袜.亚洲.另类.中文 | 成人免费视频网站在线看 | 999精品在线观看 | 亚洲爽爽网 | 精品人妻天天爽夜夜爽视频 | 日批大全 | 亚洲午夜剧场 | 精品在线小视频 | 成年人在线观看视频网站 | 亚洲av中文无码乱人伦在线观看 | 国内自拍偷拍网 | 狠狠操一区二区 | 97免费公开视频 | 九九福利| www.插插插| 亚洲av无码国产精品永久一区 | 亚洲综合日韩在线 | 日批黄色 | 91精品色| 青青青在线视频免费观看 | 日韩天天操 | 性做久久久久 | 日本亚洲一区二区 | 中文字幕在线免费观看视频 | ass日本 | 欧美呦呦 | 久久精品色欲国产AV一区二区 | 欧美日韩免费高清 | 小辣椒福利视频导航 | 日韩精品一区二区三区中文字幕 | 黑森林av凹凸导航 | 91色漫| 福利片在线看 | avtt国产| 黄色69视频| 欧美日本一道 | 青青草国产在线观看 | 日韩成人在线看 | 夜操操 | 国产精欧美一区二区三区蓝颜男同 | 美国av一区二区 | 91美女网 | 老鸭窝成人 | 麻豆福利在线观看 | 国产一级久久 | 成年午夜视频 | 久久精品国产亚洲AV高清综合 | 色中色在线视频 | 波多野结衣毛片 | 亚洲图片小说区 | 欧美重口另类 | 网址av| 成人午夜视频免费在线观看 | 人人入人人 | 成人福利午夜 | 亚洲国产精品成人综合久久久 | 亚洲视频久久久 | 好屌妞视频这里只有精品 | www男人天堂 | 黄色一级视频在线观看 | 成年人免费网站视频 | 亚洲精品一二三区 | 69xxx少妇按摩视频 | 免费一级suv好看的国产网站 | 爆乳熟妇一区二区三区霸乳 | 亚洲免费av网 | 免费动漫av|