Мой набор данных состоит из информации, полученной от стационарных пациентов об их удовлетворенности услугами, которые они получили в больнице. Данные выглядят так, как показано ниже (здесь упоминается только набор переменных):
$ Advised : Factor w/ 2 levels "0","1": 2 2 2 2 2 2 2 1 2 2 ...
$ Overall_Rate_Discharge_Process : Factor w/ 5 levels "1","2","3","4",..: 3 4 5 5 4 4 4 4 4 5 ...
$ Rights_Responsibilities : Factor w/ 2 levels "0","1": 1 2 2 2 2 2 2 2 1 2 ...
$ Overall_Care : Factor w/ 5 levels "1","2","3","4",..: 4 4 5 5 4 4 4 3 5 5 ...
$ Recommend_Employees : Factor w/ 2 levels "0","1": 1 1 2 2 2 1 2 1 1 2 ...
$ NPSVal3.1 : Factor w/ 3 levels "Detractor","Passive",..: 3 2 3 3 3 2 2 1 3 3 ...
Моя цель - найти факторы, которые влияют на NPSVal3.1 пациентов (с использованием Ordinal Logisti c Регрессия). Столбец NPSVal3.1 не имеет одинакового количества строк на каждом уровне;
Detractor Passive Promoter
981 12932 8560
Поэтому я пытаюсь использовать метод понижающей дискретизации для выбора набора данных. Ниже приведен код, который я использовал (из библиотеки "caret");
train3.1 <- downSample(mydata3.1, mydata3.1$NPSVal3.1)
Когда проверены head () и tail () набора поездов, он не выглядит случайным (идентификаторы строк: по порядку)
> head(train3.1)
Discharge_Instructions_Treatment_Plans Advised Overall_Rate_Discharge_Process Rights_Responsibilities Overall_Care
1 1 1 2 1 3
2 1 1 4 0 4
3 1 0 4 0 5
4 1 1 3 1 4
5 1 1 4 0 4
6 1 0 4 1 4
Recommend_Employees NPSVal3.1 Class
1 0 Detractor Detractor
2 0 Detractor Detractor
3 0 Detractor Detractor
4 0 Detractor Detractor
5 0 Detractor Detractor
6 1 Detractor Detractor
Кроме того, когда я извлек набор тестов, он тоже не выглядит случайным. Ниже приведен код, который я использовал.
test3.1 <- dplyr::anti_join(mydata3.1, train3.1)
Являются ли эти наборы данных случайными? Если да, как я могу это узнать? Если нет, как я могу сделать наборы поездов и тестов случайными? Спасибо за вашу поддержку!