Почему функция ROSE или SMOTE изменяет числовые значения? - PullRequest
0 голосов
/ 27 декабря 2018

Функции ROSE и SMOTE изменяют числовые значения, и я не знаю, почему.

Я пытаюсь предсказать повторную госпитализацию у пациентов с диабетом, и набор данных сильно разбалансирован.Поэтому я хочу использовать метод передискретизации, чтобы сбалансировать мой набор данных - я уже пробовал функции ROSE и SMOTE.

Мой набор данных содержит только числовые значения (фиктивные переменные), поскольку я хотел применить xgboost.Но я заметил, что ROSE и SMOTE генерируют нецелочисленные значения в двоичной переменной.
Должны ли эти функции изменять исходные значения?

set.seed(1994)
d_split <- initial_split(d.fin, prop = .8)
train <- as.data.table(training(d_split))
test  <- as.data.table(testing(d_split))

data.rose <- as.data.table(ROSE(readmitted~., data=train, seed=3)$data)

Исходный набор данных

values of

После применения функции ROSE

values of

...