1、加载数据代码补充:
boston = load_boston() data = pd.DataFrame(boston.data, columns=boston.feature_names) data[‘PRICE’] = boston.target
2、了解数据代码补充:
print(data.head()) # 打印前几行数据 print(data.describe()) # 数据统计描述信息
3、数据可视化代码补充:
sns.pairplot(data, vars=[‘CRIM’, ‘ZN’, ‘INDUS’, ‘NOX’, ‘RM’, ‘AGE’, ‘PRICE’]) plt.show()
从图像来看,房价与RM(每个住宅的平均房间数)呈正相关关系。其他因素之间的关系需要进一步观察和分析。
sns.pairplot(data, vars=[‘DIS’, ‘RAD’, ‘TAX’, ‘PTRATIO’, ‘B’, ‘LSTAT’, ‘PRICE’]) plt.show()
从图中可以看出,LSTAT(下层经济阶层比例)与价格(PRICE)有明显的负相关性。
6、分割数据代码补充:
X = data.drop(‘PRICE’, axis=1) Y = data[‘PRICE’] X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.2)
7、导入线性回归模块并训练代码补充:
from sklearn.linear_model import LinearRegression
model = LinearRegression() model.fit(X_train, Y_train)
8、在测试集合上预测代码补充:
Y_pred = model.predict(X_test)
9、评估模型代码补充:
mse = metrics.mean_squared_error(Y_test, Y_pred) print(“均方误差:”, mse)
print(“截距w0:”, round(model.intercept_, 2)) print(“各特征因子权重:”) for i, feature in enumerate(boston.feature_names):
print(feature, ":", round(model.coef_[i], 2))
根据得到的模型,可以分析以下因子影响着房子的价格:
- RM(每个住宅的平均房间数)与价格呈正相关关系,即房间数越多,价格越高。
- LSTAT(下层经济阶层比例)与价格呈负相关关系,即下层经济阶层比例越高,价格越低。
在购买房子时可能会考虑的特征包括:
- 房间数量(RM):希望有足够的空间。
- 下层经济阶层比例(LSTAT):希望周围社区的经济水平较高。
- 其他特征如距离就业中心的加权距离(DIS)、教育资源指标(PTRATIO)等也会对房价产生一定影响。
这些特征会根据个人需求和偏好不同而有所差异,但通常来说,在选择房子时我们希望综合考虑以上因素。
内容由零声教学AI助手提供,问题来源于学员提问