python 線性擬合

2021-10-03 19:55:59 字數 2049 閱讀 1456

1、線性擬合-使用math

import math

deflinefit

(x,y)

: n=

float

(len

(x))

sx,sy,sxx,syy,sxy=0,

0,0,

0,0for i in

range(0

,int

(n))

: sx+= x[i]

sy+= y[i]

sxx+= x[i]

*x[i]

syy+= y[i]

*y[i]

sxy+= x[i]

*y[i]

a =(sy*sx/n -sxy)

/( sx*sx/n -sxx)

b =(sy - a*sx)

/n r =

abs(sy*sx/n-sxy)

/math.sqrt(

(sxx-sx*sx/n)

*(syy-sy*sy/n)

)return a,b,r

if __name__ ==

'__main__'

: x=[1

,2,3

,4,5

,6] y=

[2.5

,3.51

,4.45

,5.52

,6.47

,7.51

] a,b,r=linefit(x,y)

print

("x="

,x)print

("y="

,y)print

("擬合結果:y=%10.5f x +%10.5f, r=%10.5f"

2、線性擬合-使用numpy

import numpy as npx=[

1,2,

3,4,

5,6]

y=[2.5,

3.51

,4.45

,5.52

,6.47

,7.51

]z1=np.polyfit(x,y,1)

#一次多項式擬合,相當於線性擬合

#二次擬合

python線性擬合curve fit

非線性回歸一般可以分為一元非線性回歸和多元非線性回歸。一元非線性回歸是指兩個變數 乙個自變數,乙個因變數之間呈現非線性關係,如雙曲線 二次曲線 三 多 次曲線 冪曲線 指數曲線 對數曲線等。在解決這些問題時通常建立的是非線性回歸方程或者方程組。多元非線性回歸分析是指兩個或兩個以上自變數和因變數之間呈...

線性擬合函式

線性擬合函式 regress 呼叫格式 b regress y,x b,bint,r,rint,stats regress y,x b,bint,r,rint,stats regress y,x,alpha 該函式求解線性模型 y x 是p 1的引數向量 是服從標準正態分佈的隨機干擾的n 1的向量 ...

polyfit線性擬合函式

polyfit函式是matlab中用於進行曲線擬合的乙個函式。其數學基礎是最小二乘法曲線擬合原理。曲線擬合 已知離散點上的資料集,即已知在點集上的函式值,構造乙個解析函式 其圖形為一曲線 使在原離散點上盡可能接近給定的值。呼叫方法 polyfit x,y,n 用多項式求過已知點的表示式,其中x為源資...