R语言对波斯顿房价数据集进行线性回归
时间: 2023-06-04 13:08:49 浏览: 381
很高兴为您解答问题。关于波士顿房价数据集的线性回归,在R语言中,我们可以使用lm()函数来实现。具体方法如下:
1.下载并导入波士顿房价数据集
这里提供一个官方下载链接:http://lib.stat.cmu.edu/datasets/boston。下载后解压缩,将其中的boston.txt文件读入到R语言环境中。
2.读入数据并分配到训练集和测试集
我们使用sample()函数来随机分配数据到训练集和测试集:
```R
set.seed(123)
data <- read.table("boston.txt", header = T)
trainIndex <- sample(1:nrow(data), 0.8 * nrow(data))
trainData <- data[trainIndex, ]
testData <- data[-trainIndex, ]
```
3.进行线性回归并进行预测
接下来,我们使用lm()函数来拟合一个线性回归模型,然后使用predict()函数对测试集进行预测并计算误差:
```R
fit <- lm(medv ~ ., data = trainData)
pred <- predict(fit, newdata = testData)
error <- mean((testData$medv - pred)^2)
```
其中,medv是波士顿房价数据集的响应变量(即目标变量),~.表示使用剩下的所有变量作为解释变量。
希望这个回答能够帮到您!
相关问题
波斯顿房价数据集怎么导入R语言
可以使用以下代码导入波士顿房价数据集:
```r
library(MASS)
data(Boston)
```
这会将数据集存储在名为“Boston”的数据框中,可以通过`head(Boston)`函数查看前几行数据。
基于鸢尾花数据集和波斯顿房价的cart分类回归算法Python代码
以下是基于鸢尾花数据集和波斯顿房价的 CART 分类回归算法的 Python 代码:
### 使用 sklearn 库加载数据集
```python
from sklearn.datasets import load_iris, load_boston
iris_data = load_iris()
boston_data = load_boston()
```
### 使用 CART 分类算法对鸢尾花数据集进行分类
```python
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(iris_data.data, iris_data.target, test_size=0.2, random_state=42)
clf = DecisionTreeClassifier(random_state=42)
clf.fit(X_train, y_train)
score = clf.score(X_test, y_test)
print("Accuracy: {:.2f}%".format(score*100))
```
### 使用 CART 回归算法对波士顿房价进行回归预测
```python
from sklearn.tree import DecisionTreeRegressor
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error
X_train, X_test, y_train, y_test = train_test_split(boston_data.data, boston_data.target, test_size=0.2, random_state=42)
reg = DecisionTreeRegressor(random_state=42)
reg.fit(X_train, y_train)
y_pred = reg.predict(X_test)
mse = mean_squared_error(y_test, y_pred)
print("MSE: {:.2f}".format(mse))
```