線回與非線回 sklearn 多元線性回歸

2021-10-03 00:23:23 字數 1894 閱讀 9924

前面用自寫函式解決了多元問題,現在用sklearn庫來解決多元線性問題

#老朋友,不介紹了

import numpy as np

from numpy import genfromtxt

#把線性回歸模型庫單獨匯出來

from sklearn import linear_model

#把畫圖工具庫匯出來

import matplotlib.pyplot as plt

from mpl_toolkits.mplot3d import axes3d

#讀入你的資料

data = genfromtxt(r"delivery.csv"

,delimiter =

',')

print

(data)

#切割資料,和原先一樣的方法

#需要什麼就切什麼

x_data = data[:,

:-1]

y_data = data[:,

-1]print

(x_data)

print

(y_data)

切分後的資料:

#建立回歸模型

#帶入切分好的資料

model = linear_model.linearregression(

)model.fit(x_data,y_data)

#係數

print

("model.coef:"

,model.coef_)

#截距print

("model.intercept:"

,model.intercept_)

#測試一下

x_test =[[

102,4]

]predict = model.predict(x_test)

print

("predict:"

,predict)

#使用add_subplot函式來建立3d面

ax = plt.figure(

).add_subplot(

111,projection =

'3d'

)ax.scatter(x_data[:,

0],x_data[:,

1],y_data,c=

'r',marker =

'o',s=

100)

x0 = x_data[:,

0]x1 = x_data[:,

1]#使用meshgrid函式生成網格矩陣

x0,x1 = np.meshgrid(x0,x1)

z = model.intercept_ + x0*model.coef_[0]

+x1*model.coef_[1]

#畫3d圖

ax.plot_su***ce(x0,x1,z)

#設定座標軸名稱

ax.set_xlabel(

'miles'

)ax.set_ylabel(

'num of delivers'

)ax.set_zlabel(

'time'

)#顯示影象

效果還是不錯的,而且這個圖可以移動,方便檢視!

線回與非線回 梯度下降法的一元線性回歸

對於線性回歸問題,通常有兩種方法可以解決,即梯度下降法和標準方程法,兩者各有優缺點 梯度下降法對於引數多的回歸方程仍然適用,但並不是每次都能達到最優解,神經網路也需要梯度下降法來解決 標準方程法適用於引數少的回歸方程,但是時間複雜度較高 首先來看一下梯度下降法的 import numpy as np...

小公尺2s 用線刷,刷回MIUI V5了

1.在使用miflash刷機時,出現了 failed remote partition table doesn t exist fastboot flash partition dp0images gpt both0.bin echo flash partition exit b 1 1.recov...

計算機小碩 留在一線城市還是回安逸的小城?

秋招的序幕已經微微拉開,又到了畢業生每年最煎熬的時刻,讓我們舉起酒杯,為這個時刻的到來發自內心地祝賀,祝賀,祝賀!每年到了這個時刻,相信很多人都會糾結乙個問題,到底是應該留在一線城市過著狗一樣的生活,還是回到家鄉的小城像豬一樣地生活呢?這也是最近特別困擾我的問題,但人的成長就是這樣的吧,我們總是在無...