根据数据表用最小二乘法预测波士顿房价模拟多元线性回归曲线
时间: 2024-09-26 18:10:48 浏览: 41
波士顿房价的多元线性回归的jupyter 文件
最小二乘法是一种常用的数据拟合方法,尤其适用于统计学中的回归分析,如预测波士顿房价这样的情况。在多元线性回归中,我们假设房屋价格(因变量或响应变量)与其几个特征(自变量或解释变量),如犯罪率、人口密度等存在线性关系。
首先,你需要有一个包含波士顿房价和相关特征的数据集,比如“波士顿房价数据”(Boston Housing Dataset),这是统计学习领域的一个经典案例,通常用于机器学习入门教程。
步骤如下:
1. **数据加载**:导入所需的库,如Python的`pandas`和`sklearn`,然后读取并预处理数据。
```python
import pandas as pd
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
boston = load_boston()
df = pd.DataFrame(boston.data, columns=boston.feature_names)
df['PRICE'] = boston.target
```
2. **数据划分**:将数据分为训练集和测试集,以便评估模型性能。
```python
X = df.drop('PRICE', axis=1) # 特征
y = df['PRICE'] # 房价
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
```
3. **建立模型**:创建一个`LinearRegression`实例,并使用训练数据拟合模型。
```python
model = LinearRegression()
model.fit(X_train, y_train)
```
4. **预测**:利用模型对测试集或新的数据进行预测。
```python
predictions = model.predict(X_test)
```
5. **绘制曲线**:可以使用matplotlib将实际房价和预测值画成散点图,并添加趋势线(回归曲线)。
```python
import matplotlib.pyplot as plt
plt.scatter(y_test, predictions)
plt.xlabel("真实房价")
plt.ylabel("预测房价")
plt.title("波士顿房价预测")
plt.show()
```
阅读全文