在 R 中拟合模型时排除 ID 字段
Excluding ID field when fitting model in R
我有一个在 R 中创建和测试的简单随机森林模型。现在我已经从我的 training/testing 数据框中排除了一个内部公司 ID。在 R 中有没有一种方法可以将此列包含在我的数据中并让我的模型的 training/execution 忽略该字段?
我显然不希望模型尝试将其合并为一个变量,但是在导出数据并添加一列预测结果时,我需要该内部 ID 来绑定其他客户数据所以我知道哪些客户被归类为
我只是使用 randomForest 库中开箱即用的随机森林函数
#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
排除特定列或一组列的简单示例如下
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 中的其他 fuctions/alogorithms 中也普遍有效。
我有一个在 R 中创建和测试的简单随机森林模型。现在我已经从我的 training/testing 数据框中排除了一个内部公司 ID。在 R 中有没有一种方法可以将此列包含在我的数据中并让我的模型的 training/execution 忽略该字段?
我显然不希望模型尝试将其合并为一个变量,但是在导出数据并添加一列预测结果时,我需要该内部 ID 来绑定其他客户数据所以我知道哪些客户被归类为
我只是使用 randomForest 库中开箱即用的随机森林函数
#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
排除特定列或一组列的简单示例如下
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 中的其他 fuctions/alogorithms 中也普遍有效。