一元线性回归模型 数据案例
时间: 2024-12-31 14:36:55 浏览: 14
### 关于一元线性回归模型的数据案例
在一元线性回归分析中,当研究对象仅涉及一个自变量和一个因变量,并且两者间的关系能够通过一条直线近似表达时,即构成了一元线性回归分析[^2]。
#### 示例数据集及应用案例:房价预测
考虑一个简单的应用场景——基于房屋面积来预测其售价。这里假定房价主要受居住面积的影响,在此条件下构建了一个简单的一元线性回归模型用于预测特定大小住宅的价格[^4]。
```python
import numpy as np
from sklearn.linear_model import LinearRegression
import matplotlib.pyplot as plt
# 假设给定一些已知的训练样本点 (X_train, y_train),其中 X 表示房子面积(单位:平方英尺),y 则代表对应的价格(单位:美元)
areas = [[100], [200], [300], [400], [500], [600]] # 训练集中各房型对应的建筑面积列表
prices = [8000, 9000, 10000, 11000, 12000, 13000] # 各户型相应市场成交价数组
# 创建并拟合一元线性回归模型
model = LinearRegression()
model.fit(areas, prices)
# 预测新输入值的结果
new_area = [[700]]
predicted_price = model.predict(new_area)[0]
print(f'根据现有模型估计,{new_area[0][0]} 平方英尺的房子预计售价约为 ${int(predicted_price)}')
# 绘制图表展示原始数据分布与最佳拟合直线
plt.scatter(areas, prices, color='blue', label="实际观测值")
plt.plot(np.linspace(min(areas), max(areas)),
model.coef_[0]*np.linspace(min(areas), max(areas)) + model.intercept_,
linestyle="--", color="red", linewidth=2, label="最优拟合曲线")
plt.xlabel('House Area (sq ft)')
plt.ylabel('Price ($)')
plt.title('One Variable Linear Regression Model')
plt.legend(loc='upper left')
plt.show()
```
上述代码片段展示了如何利用 `sklearn` 库中的 `LinearRegression()` 函数快速搭建起一个基本的一元线性回归模型,并借助该模型完成对未来未知情况下的价格预估工作。同时,还运用了 Matplotlib 工具包绘制出了直观反映整体趋势变化规律的最佳拟合直线图形。
阅读全文