python - 使用 scikit-learn 训练线性回归模型后,如何对原始数据集中不存在的新数据点进行预测?
问题描述
我正在学习线性回归,我使用 scikit-learn 编写了这个线性回归代码,在做出预测之后,如何对原始数据集中不存在的新数据点进行预测。
在此数据集中,您将根据工作经验获得人们的薪水。
例如,一个有 15 年工作经验的人的预测薪水应该是 [167005.32889087]
这是我的代码,
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
data = pd.read_csv('project_1_dataset.csv')
X = data.iloc[:,0].values.reshape(-1,1)
Y = data.iloc[:,1].values.reshape(-1,1)
linear_regressor = LinearRegression()
linear_regressor.fit(X,Y)
Y_pred = linear_regressor.predict(X)
plt.scatter(X,Y)
plt.plot(X, Y_pred, color = 'red')
plt.show()
解决方案
在使用现有数据集拟合和训练模型后(即在 之后linear_regressor.fit(X,Y)
),您可以以相同的方式在新实例中进行预测:
new_prediction = linear_regressor.predict(new_data)
print(new_prediction)
new_data
您的新数据点在哪里。
如果您想对特定的随机新数据点进行预测,上述方式应该足够了。如果您的新数据点属于另一个数据框,那么您可以替换new_data
为包含要预测的新实例的相应数据框。
推荐阅读
- java - 在 java 的选项卡中添加 onItemSelected
- php - 将数组作为函数参数并将其作为 PHP 中的普通变量获取
- laravel - 无法使用 Laravel Forge 连接域
- docker - 如何自动备份 MYSQL 数据库容器
- java - 如何在 Android 中使用 Flavors 更改应用程序颜色
- wordpress - wordpress 支持哪些编码标准?像 psr-0 或其他东西
- excel - 自动填充到vba中的命名范围
- javascript - 编写一个递归函数来格式化javascript中的对象
- asp.net-mvc - 缺少文件 System.Runtime,版本 = 4.2.1.0
- python - 网络抓取 - 名侦探柯南