使用scikit-learn对房价进行回归预测
时间: 2023-09-17 08:08:38 浏览: 108
用于房价回归预测的数据
好的,我们可以使用scikit-learn中的线性回归模型对房价进行预测。
首先,我们需要准备数据集。我们可以使用scikit-learn自带的波士顿房屋数据集,它包含了506个样本和13个特征,其中每个特征代表了影响房价的一种因素,如犯罪率、房产税率、学生-教师比例等等。我们可以使用以下代码加载数据集:
```python
from sklearn.datasets import load_boston
boston = load_boston()
X = boston.data
y = boston.target
```
接下来,我们需要将数据集拆分为训练集和测试集。我们可以使用scikit-learn中的train_test_split函数来实现:
```python
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
```
然后,我们可以使用scikit-learn中的线性回归模型来拟合训练集数据,并对测试集数据进行预测:
```python
from sklearn.linear_model import LinearRegression
model = LinearRegression()
model.fit(X_train, y_train)
y_pred = model.predict(X_test)
```
最后,我们可以使用scikit-learn中的mean_squared_error函数来计算模型的均方误差(MSE):
```python
from sklearn.metrics import mean_squared_error
mse = mean_squared_error(y_test, y_pred)
print('MSE:', mse)
```
完整代码如下:
```python
from sklearn.datasets import load_boston
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error
boston = load_boston()
X = boston.data
y = boston.target
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
model = LinearRegression()
model.fit(X_train, y_train)
y_pred = model.predict(X_test)
mse = mean_squared_error(y_test, y_pred)
print('MSE:', mse)
```
注意,这只是一个简单的线性回归模型,实际应用中可能需要使用更复杂的模型来提高预测准确度。
阅读全文