1、 读取cal_housing数据,划分训练集与测试集(测试集30%),对数据进行标准差标准化处理,构建线性回归模型,预测测试集数据;最后评价模型(平均绝对误差、均方误差、R方等指标)。
时间: 2024-12-21 13:29:32 浏览: 4
首先,我们需要加载`cal_housing`数据集,这个数据通常存储在一个CSV文件或者数据库中。你可以使用Python的数据分析库pandas来完成读取任务:
```python
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_absolute_error, mean_squared_error, r2_score
# 1. 读取数据
url = "path/to/cal_housing.csv" # 替换为实际路径
data = pd.read_csv(url)
# 2. 划分训练集和测试集
X = data.drop('target_column', axis=1) # 'target_column'是目标变量名
y = data['target_column']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
# 3. 数据标准化
scaler = StandardScaler()
X_train_scaled = scaler.fit_transform(X_train)
X_test_scaled = scaler.transform(X_test)
# 4. 构建线性回归模型
model = LinearRegression()
model.fit(X_train_scaled, y_train)
# 5. 预测测试集
y_pred = model.predict(X_test_scaled)
# 6. 评估模型
mae = mean_absolute_error(y_test, y_pred)
mse = mean_squared_error(y_test, y_pred)
r2 = r2_score(y_test, y_pred)
print(f"Mean Absolute Error: {mae}")
print(f"Mean Squared Error: {mse}")
print(f"R^2 Score: {r2}")
```
在这个例子中,我们假设你知道数据集中目标列的名称('target_column'),并已经将其从特征矩阵中移除。如果你需要更多关于数据预处理或模型选择的信息,请随时提问。
阅读全文