首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R中模型拟合时的ID场排除

R中模型拟合时的ID场排除
EN

Stack Overflow用户
提问于 2018-05-18 20:57:58
回答 1查看 1.7K关注 0票数 1

我有一个简单的随机森林模型,我已经创建并测试了R。目前,我已经从我的培训/测试数据框架中排除了一个内部公司ID。在R中是否有一种方法,我可以在我的数据中包括这一列,并让我的模型的培训/执行忽略这个字段?

显然,我不希望该模型试图将其合并为一个变量,但是在导出数据并添加预测结果的列时,我需要内部id来绑定其他客户数据,以便知道哪些客户被分类为

我只是使用来自randomForest库的开箱即用的随机森林函数。

代码语言:javascript
复制
#divide data into training and test sets
set.seed(3)
id<-sample(2,nrow(Churn_Model_Data_v2),prob=c(0.7,0.3),replace = TRUE)
churn_train<-Churn_Model_Data_v2[id==1,]
churn_test<-Churn_Model_Data_v2[id==2,]

#changes Churn data 1/2 to a factor for model
Churn_Model_Data_v2$`Churn` <- as.factor(Churn_Model_Data_v2$`Churn`)
churn_train$`Churn` <- as.factor(churn_train$`Churn`)
#churn_test$`Churn` <- as.factor(churn_test$`Churn`)

bestmtry <- tuneRF(churn_train,churn_train$`Churn`, stepFactor = 1.2, 
improve =0.01, trace=T, plot=T )

#creates model based on training data, views model
churn_forest <- randomForest(`Churn`~. , data= churn_train )
churn_forest


#shows us what variables are most important
importance(churn_forest)
varImpPlot(churn_forest)

#predicts churn diagnosis on test data
predict_churn <- predict(churn_forest, newdata = churn_test, type="class")
predict_churn
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-20 02:43:28

排除特定列或列集的简单示例如下

代码语言:javascript
复制
library(MASS)
temp<-petrol
randomForest(No ~ .,data = temp[, !(colnames(temp) %in% c("SG"))]) # One Way
randomForest(No ~ .-SG,data = temp) #Another way with similar result

这种排除方法在R中的其他函数/算法中也是有效的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50419178

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档