在實際應用中,線性回歸分析是常用的一種分析方法,特别是在銷售場景中,應用尤其廣泛,下面介紹一個利用python進行線性回歸的例子。
1.導入需要用到的庫,如果沒有則先進行安裝。
import numpy as np
import pandas as pd
from sklearn import linear_model #導入機器學習庫中的線性回歸方法
from matplotlib import pyplot as plt
2.讀取或輸入資料。
data=pd.DataFrame({'price':[12,52,33,24,51,26,37],'sales':[2030,509,1457,875,2301,1521,1689]})
print(data)
3.資料預處理。選擇x,y變量,如果有空值,可以剔除。
x=np.array(data['price']).reshape([7,1])
y=np.array(data['sales']).reshape([7,1])
4.探索性資料分析。繪制散點圖,觀察資料關系及趨勢變化。
plt.scatter(x,y)
plt.show()
從圖形中可以看出,除去一些異常值的情況下,x,y之間存在一定的線性關系。
在實際情況中,用于線性回歸的樣本量應該稍大一些,趨勢才會更明顯。
5.建立線性回歸模型,并進行模型訓練。
model=linear_model.LinearRegression()
model.fit(x,y)
6.檢驗模型效果。
coef=model.coef_ #擷取自變量系數
model_intercept=model.intercept_#擷取截距
R2=model.score(x,y) #R的平方
print('線性回歸方程為:','\n','y=’{}*x+{}'.format(coef,model_intercept))
7.利用上面的結果進行回歸預測。
new_x=60
y_pre=model.predict(new_x)
print(y_pre)