Во-первых, я построил модель по
cf1 <- cforest(y~., data = DATA, strata = DATA$y,
ntree = 200L, mtry = 10)
Здесь, учитывая, что набор данных очень несбалансирован (y=1
занимает 7% всех наблюдений), поэтому я добавляю strata
здесь, чтобы убедиться, что наблюденияс y=1
не игнорируются в упаковке.cf1
работает нормально, с точки зрения матрицы путаницы.Тем не менее, когда я попытался реализовать выбор функции с помощью
cf1.imp_cond <- varimp(cf1, conditional = TRUE)
Возвращается
Error in x[strata == s] <- .resample(x[strata == s]) :
NAs are not allowed in subscripted assignments
Я не могу понять, что означает эта ошибка.Кто-то встречал это раньше?
---- update
Вот манипулированные данные испытаний из исходного набора данных, который я использую.Вот код
cf2 <- cforest(X5_years_survival~., data = test, strata = X5_years_survival,
ntree = 200L, mtry = 6)
cf2.imp_cond <- varimp(cf2, conditional = TRUE)
Тем не менее, у меня есть ошибка:
Error in x[strata == s] <- .resample(x[strata == s]) :
NAs are not allowed in subscripted assignments
--- update
Ошибка возникает при применении функции kidids_node
.