y=a+b1x1+b2x2+…+bnxn+e
公式中:
y—因变量,x—自变量,a—常数项,b1—回归系数,回归直线的斜率,e—随机误差,即随机因素对变量所产生的影响
import pandas,numpy
data=pandas.read_csv('/Users/cenguangda/Downloads/4.1/data.csv')
x=data[['广告费用','渠道数']]
y=data[['购买用户数']]
#绘图广告费用与购买用户数图
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif']=['SimHei']
plt.title('广告费用与购买用户数关系')
plt.xlabel('广告费用')
plt.ylabel('购买用户数')
plt.grid(True)
plt.plot(x['广告费用'],y,'k.')
plt.show()
#绘制渠道数和购买用户数图
plt.rcParams['font.sans-serif']=['SimHei']
plt.figure()
plt.title('渠道数和购买用户数')
plt.xlabel('渠道数')
plt.ylabel('购买用户数')
plt.grid(True)
plt.plot(x['渠道数'],y,'k.')
plt.show()
#建立模型
from sklearn.linear_model import LinearRegression
lModel=LinearRegression()
#训练模型
lModel.fit(x,y)
#评估模型
lModel.score(x,y)
#输出结果
lModel.score(x,y)
Out[30]: 0.93928850730154045