r语言XGBoost

该博客介绍了如何运用R语言的XGBoost库进行房价预测。首先,作者加载了必要的库,然后导入并划分了数据集为训练集、验证集和测试集。接着,通过dummyVars处理分类变量,并用XGBoost训练模型。在训练过程中,设置了超参数并进行了交叉验证。最后,展示了特征重要性图和SHAP值图,以及训练和测试集上的预测结果,评估了模型的预测性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

library(xgboost)


library(tidyverse)
library(skimr)
library(DataExplorer)
library(caret)
library(pROC)


cPriceData <- read.csv(file.choose()) 

set.seed(42)
trains <- createDataPartition(
  y = cPriceData$price,
  p = 0.85,
  list = F,
  times = 1
)

trains2 <- sample(trains, nrow(cPriceData)*0.7)
valids <- setdiff(trains, trains2)

data_train <- cPriceData[trains2, ]
data_valid <- cPriceData[valids, ]
data_test <- cPriceData[-trains, ]

#训练集
dvfunc <- dummyVars(~., data = data_train[, 1:5], fullRank = T)
data_trainx <- predict(dvfunc, newdata = data_train[, 1:5])
data_trainy <- data_train$price
 
data_validx <- predict(dvfunc, newdata = data_valid[, 1:5])
data_validy <- data_valid$price

data_testx <- predict(dvfunc, newdata = data_test[, 1:5])
data_testy <- data_test$price

dtrain <- xgb.DMatrix(data = data_trainx, label = data_trainy)
dvalid <- xgb.DMatrix(data = data_validx,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值