您的位置:首页 > 编程语言 > Python开发

机器学习之线性回归 (Python SKLearn)

2017-05-04 15:14 645 查看
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties
font = FontProperties(fname=r"c:\windows\fonts\msyh.ttc", size=10) #解决中文乱码问题
def runplt():
plt.figure()
plt.title('匹萨价格与直径数据', fontproperties=font)
plt.xlabel('直径(英寸)', fontproperties=font)
plt.ylabel('价格(美元)', fontproperties=font)
plt.axis([0, 25, 0, 25])
plt.grid(True)
return plt
plt = runplt()
X = [[6],  [8], [10], [14], [18]] #直径
y = [[7], [9], [13], [17.5], [18]] #价格
#plt.plot(X, y, 'k.')

from sklearn.linear_model import LinearRegression
model = LinearRegression()
#线性回归模型y = a + Bx
model.fit(X, y) #训练模型
result = model.predict(12) #12是需要预测的值,返回是预测值
print('截距值 $%.2f' % model.intercept_)
print('系数 $%.2f' % model.coef_)
print('预测一张12英寸匹萨的价格: $%.2f' % result )

#plt = runplt()
#plt.plot(X, y, 'k.')
X2 = [[0], [10], [14], [25]]
model = LinearRegression()
model.fit(X, y) #训练模型
y2 = model.predict(X2) #做出预测
plt.plot(X, y, 'k.')
plt.plot(X2, y2, 'g-')
plt.show()




参考资料:机器学习与量化投资
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: