线性回归
1.引入数据,数据处理,低维数据要变为二维
可以使用plt.scatter(查看形状数量)
2.创建LR对象将数据进行拟合
可以使用 查看图像plt.plot(X_data,Y_data,'b.')
plt.plot(X_data,lr.predict(X_data),'r')
plt.show()
3.导入要预测的新对应数据特征,改变新特征的数据维度
我选择的数据如下
AT,V, AP, PH 列分别为特征值,PE为预测值。
如需要可从如下下载(仅供参考和学习)
https://www.lanzoub.com/i5Fs621ptgdc 密码:9bsk
4.进行预测使用predict方法传入特征数据 如:返回对象 = lr.predict(新特征量)
5.输出或者填入预测值
# 使用序列预测数据
# 导入线性回归模块
from sklearn.linear_model import LinearRegression
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
# 引入数据
data = pd.read_excel('scikit-learn\\线性回归\\发电场数据.xlsx')
# 数据处理
x_data = data.iloc[:,0:4]
y_data = data.iloc[:,4] # 预测列
x = np.arange(1,len(data.iloc[:,0])+1)
plt.scatter(x,y_data)
plt.show()
print(x_data.shape) # 打印形状数量
#转换二维数组w2
X_data = x_data
Y_data = y_data.values.reshape(-1,1)
print(X_data)
print(X_data)
# 创建对象
lr = LinearRegression()
lr.fit(x_data,Y_data) # 拟合
plt.plot(X_data,Y_data,'b.')
plt.plot(X_data,lr.predict(X_data),'r')
plt.show()
# 预测
ycdata = np.array([28.4,50.6,1011.9,80.54])
yc1_data = ycdata.reshape(1,4)
R1 = lr.predict(yc1_data)
print(R1)
预测结果