Был обнаружен повторяющийся диапазон ячеек. Попробуйте увеличить точность диапазона бина

Небольшая помощь с этой ошибкой?

Я получаю это, когда я бегу CFS в R

Runnin код:

best_features<- cfs(Target~.,df)

где df - набор данных, а Target и best_features говорят сами за себя.

Ошибка:

Error in .jcall("weka/filters/Filter", "Lweka/core/Instances;", "useFilter",  :  
java.lang.IllegalArgumentException: A duplicate bin range was detected. Try increasing the bin range precision.

1 ответ

"A duplicate bin range was detected."ошибка выбрасывается RWeka::Discretize которые многие FSelector вызов функций изнутри. Это происходит, когда столбцы данных содержат слишком много значений, которые отличаются только на небольшое количество (потому что Discretize использует представление с фиксированной точкой при именовании ячеек).

Решение состоит в том, чтобы масштабировать данные по большому коэффициенту:

numcols <- sapply(df, is.numeric)  # can be omitted if data is entirely numeric
df[numcols] <- df[numcols] * 1000  # try larger values if this is not enough

best_features <- cfs(Target~.,df)  # or anything else that uses FSelector
Другие вопросы по тегам