在python中書寫一個線性函數,具體方法如下:
def temp1(datas):
x = datas[0] #獲取自變量x
y = datas[1] #獲取因變量y
n = np.size(answer1, axis = 1) #獲取有多少個自變量,axis=1代表獲取矩陣的列數
#根據公式計算k
k = (n*np.sum(x*y) - np.sum(x)*np.sum(y)) / (n*np.sum(np.power(x,2)) - np.sum(x) * np.sum(x))
#根據公式計算b
b = (np.sum(np.power(x,2)) * np.sum(y) -np.sum(x) * np.sum(x*y)) / (n*np.sum(np.power(x,2)) - np.sum(x) * np.sum(x))
las = k*x + b #根據公式得到擬合函數
fig = plt.figure() #獲得figure對象
ax1 = fig.add_subplot(1,1,1) #添加一個圖紙
ax1.set_xlim([min(x)-0.5, max(x)+0.5]) #設置x軸刻度
ax1.set_ylim([min(y) -0.5, max(y) +0.5]) #設置y軸刻度
plt.plot(x,las,'k',label='擬合函數') #畫出擬合函數
plt.plot(x,y,'o',label = '樣本數據') #畫出樣本數據
plt.grid() #添加網格線
效果圖: