我想准备一个数据集以在Task包的mlr中使用它。二进制因数无关的变量应该属于类因数,逻辑,字符还是整数?是否可以将具有两个以上类别的因子变量作为因子/字符,或者是否在mlr中集成了需要例如mlr不会自动进行转换的模型矩阵?在这些情况下,mlr期望哪些课程?

例如:

x1 <- factor(sample(0:1, size=10, replace = TRUE))
x2 <- factor(sample(letters[1:5], size=10, replace = TRUE))
y <- sample(c("yes", "no"), size=10, replace = TRUE)
library(mlr)
makeClassifTask(data = data.frame(y, x1, x2), target = "y", positive="yes")

最佳答案

是。如果这是一个因素,那应该是一个因素。当然,您可以拥有两个以上的课程,尽管并非所有学习者都支持两个以上的课程(mlr将负责确定学习者是否自动兼容)。 mlr总是自动将任务中的所有内容转换为适合学习者的内容,或者告诉您学习者和任务不兼容。

您还可以使用功能listLearners()列出适合给定任务的学习者。

关于r - R包mlr的(二进制)因子变量应具有哪些类?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45712641/

10-11 16:51