gpt4 book ai didi

r - 分类 - 因子水平的使用

转载 作者:行者123 更新时间:2023-12-04 09:13:29 30 4
gpt4 key购买 nike

我目前正在研究流失问题的预测模型。
每当我尝试运行以下模型时,都会收到此错误:至少一个类级别不是有效的 R 变量名称。这将在生成类概率时导致错误,因为变量名称将转换为 X0、X1。请使用可用作有效 R 变量名称的因子水平。

fivestats <- function(...) c( twoClassSummary(...), defaultSummary(...))
fitControl.default <- trainControl(
method = "repeatedcv"
, number = 10
, repeats = 1
, verboseIter = TRUE
, summaryFunction = fivestats
, classProbs = TRUE
, allowParallel = TRUE)
set.seed(1984)

rpartGrid <- expand.grid(cp = seq(from = 0, to = 0.1, by = 0.001))
rparttree.fit.roc <- train(
churn ~ .
, data = training.dt
, method = "rpart"
, trControl = fitControl.default
, tuneGrid = rpartGrid
, metric = 'ROC'
, maximize = TRUE
)

在附图中,您可以看到我的数据,我已经将一些数据从 chr 转换为因子变量。

DATA OVERVIEW

我不明白我的问题是什么,如果我将整个数据转换为因子,那么例如变量 total_airtime_out 可能有大约 9000 个因子。

感谢您的任何帮助!

最佳答案

我不太可能重现您的错误,但我有根据的猜测是错误消息告诉您需要知道的一切:

At least one of the class levels is not a valid R variable name. This will cause errors when class probabilities are generated because the variables names will be converted to X0, X1. Please use factor levels that can be used as valid R variable names.



强调我的。查看您的响应变量,其级别为 "0""1" ,这些不是 R 中的有效变量名(你不能做 0 <- "my value" )。如果你用类似的东西重命名响应变量的级别,这个问题可能会消失
levels(training.dt$churn) <- c("first_class", "second_class")

根据 this Q .

关于r - 分类 - 因子水平的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44084735/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com