【问题标题】:queries in spliting train and test data in Random Forest在随机森林中拆分训练和测试数据的查询
【发布时间】:2018-07-31 20:54:07
【问题描述】:

我有一个包含 15 个变量和 4669 个观察值的数据框。

我正在使用随机森林进行建模。我的数据集的目标是预测特定产品是否会被客户接受。

所以,我的输出变量有“是”、“否”和“”的因子。

我的问题是,我是否可以在随机 Forest 中预测这个 "" 为 Yes 或 No?

示例数据如下所示

Outputvar <- c("Yes", "Yes", "No", "NO", "", "")
Inputvar1 <- c("M", "F", "F", "M", "F", "M")
Inputvar2 <- c("34","25","40","50","60","34")
data <- data.frame(cbind(Outputvar,Inputvar2,Inputvar1))

我是 R 新手,如果我的理解是错误的,那么谁能解释我可以做什么?

编辑:这是我到目前为止尝试过的代码

library(RandomForest)
data$outvar <- factor(data$outputvar, exclude = NULL)
ind0 <- sample(2, nrow(data), replace = TRUE, prob = c(0.7,0.3))
train0 <- data[ind0==1, ]
test0 <-  data[ind0==2, ]
fit1 <- randomForest(outputvar1~., data=train0)
print(fit1)
plot(fit1)

编辑2: 编号:3536 是:1061 “”:72

【问题讨论】:

  • 你用的是什么包?到目前为止,您尝试了什么?
  • 尝试添加:data$Outputvar &lt;- factor(data$Outputvar, exclude=NULL)
  • @MrSmithGoesToWashington 我正在使用 Randomforest 包
  • @MrSmithGoesToWashington 实际上我的问题是,我是否可以使用随机森林将那些 Null 预测为是或否。 ??
  • 小心,您的data$Outputvar 中有“否”和“否”类别。您应该更正此问题。

标签: r machine-learning random-forest


【解决方案1】:

我的数据集的目标是预测特定产品是否会被客户接受。

所以,我的输出变量有“是”、“否”和“”的因子。

嗯,。这里的实际上下文是:

您的输出变量只有两个因素,“是”和“否”;并且您的可用数据集的一部分没有结果的值(“”)并且您想要预测它。

我的问题是,我是否可以在随机森林中预测这个 "" 为 Yes 或 No?

原则上,是的 - 这正是分类器(例如随机森林)的用途。一般来说,您需要仅使用结果(是/否)确实可用的样本来训练您的模型(训练集,您可以将其子集用作测试集,以评估您的模型性能) ;之后,您可以在其余数据集中使用predict 来预测结果。

当然,这只是一个复合过程的4行总结,其中涉及许多步骤和子步骤,此处无法详细分析,但希望能给您一个(非常)高层次的问题视图(可以说,这就是您要问的)。我对your other relevant question 的回答也应该有用。

【讨论】:

    猜你喜欢
    • 2019-08-12
    • 2021-07-10
    • 2020-10-31
    • 2016-12-01
    • 2017-01-22
    • 2017-10-13
    • 1970-01-01
    • 2018-06-13
    • 2021-12-29
    相关资源
    最近更新 更多