線性回歸及程式演示

2021-10-09 11:34:56 字數 3835 閱讀 3836

from sklearn.linear_model import linearregression # 線性回歸的類

from sklearn.model_selection import train_test_split # 資料劃分的類

from sklearn.datasets import load_boston

from sklearn.datasets import load_iris

np.set_printoptions(precision=2)

#使得結果保留兩位小數

# 花瓣的長度(第二列)來**寬度(第三列)

iris=load_iris(

)#取所有的行和第二,第三列,並且將x轉化為二維的

x,y=iris.data[:,

2].reshape(-1

,1),iris.data[:,

3]lr=linearregression(

)x_train,x_test,y_train,y_test=train_test_split(x,y,test_size=

0.25

,random_state=0)

lr.fit(x_train,y_train)

print

('模型權重:'

,lr.coef_)

print

('截距:'

,lr.intercept_)

y_hat=lr.predict(x_test)

print

('實際值:'

,y_train[:5

])print

('**值'

,y_hat[:5

])# r^2評估

y_hat=lr.predict(x_test)

print

('訓練集r^2:'

,lr.score(x_train,y_train)

)print

('測試集r^2:'

# 用來正常顯示負號

plt.rcparams[

'font.size']=

15plt.figure(figsize=(10

,6))

plt.scatter(x_train,y_train,c=

'orange'

,label=

'訓練集'

)plt.scatter(x_test,y_test,c=

'g',marker=

'd',label=

'測試集'

)plt.plot(x,lr.predict(x)

,'r-'

)plt.legend(

)plt.xlabel(

'花瓣長度'

)plt.ylabel(

'花瓣寬度'

'真實值'

,color=

'r',marker=

'o')

plt.plot(y_hat,label=

'**值'

,ls=

'--'

,color=

'g',marker=

'o')

plt.xlabel(

'測試集資料序號'

)plt.ylabel(

'資料集'

)x,y=boston.data,boston.target #這裡的x已經是乙個二維陣列了

('模型權重:'

,lr.coef_)

print

('截距:'

,lr.intercept_)

y_hat=lr.predict(x_test)

print

('訓練集r^2:'

,lr.score(x_train,y_train)

)print

('測試集r^2:'

]#取除開最後一列

y=df.iloc[:,

-1]#僅取最後一列

x_train, x_test, y_train, y_test = train_test_split(x, y,test_size=

0.2, random_state=0)

lr=linearregression(

)lr.fit(x_train,y_train)

print

(lr.predict(x_test)

)# #使用r方對模型效果進行評估

print

("訓練集r^2:"

, lr.score(x_train, y_train)

)print

("測試集r^2:"

線性回歸及python實現

有資料集 x1 y1 x2 y2 xn yn x1 y 1 x2 y2 x n y n 其中,xi xi1 xi2 xi3 xid yi rx i x x x x y i in r xi x i1 xi2 xi3 xi d yi r,其中n表示變數的數量,d表示每個變數的維度。可以用以下函式來描述y...

matlab線性回歸程式

最近用matlab做線性回歸,用到命令regress,可是發現他沒辦法做回歸係數的t檢驗,因此,自己就寫了乙個。參考書籍 計量經濟學 龐皓 科學出版社 function b,beta,t,t0,sigma,rss,tss,r,r1,f,f0 pureregress x,y,con x是因子,n p,...

線性回歸模型 線性回歸模型

回歸的思想和分類有所不一樣,分類輸出的結果為離散的值,回歸輸出的是乙個連續型的值。線性回歸的思想就是試圖找到乙個多元的線性函式 當輸入一組特徵 也就是變數x 的時候,模型輸出乙個 值y h x 我們要求這個 值盡可能的準確,那麼怎麼樣才能做到盡可能準確呢?其中 表示實際值,表示 值 其中 表示實際值...