Как вложить данные с эксклюзивными двоичными переменными в R? - PullRequest
1 голос
/ 22 апреля 2019

У меня есть набор данных с 69 столбцами и более 50000 строк, который структурирован так:

  • Некоторые столбцы могут принимать только 0 или 1 значения (двоичные), например: 'isFemale', 'isChild' и т. Д.

  • Некоторые другие столбцы могут принимать только 0 или 1 значения (двоичные), но являются исключительными. Например, у меня есть 3 столбца с именами «Primary.Language.ENGLISH», «Primary.Language.SPANISH», «Primary.Language.OTHER». Эти столбцы являются эксклюзивными, поэтому у меня может быть только один из них True.

.

Primary.Language.ENGLISH    Primary.Language.SPANISH    Primary.Language.OTHER  
1                           0                           0       
0                           1                           0

У меня не может быть этого (не может быть больше одной Истины в одной строке)

Primary.Language.ENGLISH    Primary.Language.SPANISH    Primary.Language.OTHER    
1                           1                           0       

Оба типа столбцов имеют NA (около 4-5%), и я думал о проведении импутации с помощью пакета мышей в R. Тем не менее, я боюсь, что для второго типа у меня будут проблемы, поскольку вменение не может соответствовать ограничению, которое я обсуждал выше (не может иметь более одной '1' в одной строке для каждого типа столбца этого типа ). Есть ли у вас какие-либо предложения о том, как мне этого добиться?

1 Ответ

0 голосов
/ 12 июня 2019

Я не думаю, что в мышах есть встроенный параметр для архивирования.

Что вы можете сделать, чтобы преобразовать вашу переменную из двоичной в числовую. (например, переменная Primary.Language с 1 для английского, 2 для испанского, 3 ДРУГОЙ)

Если вы используете PPM (прогнозирование среднего значения) в качестве алгоритмов вменения с использованием параметра method , ваше ограничение будет соблюдаться.

Расчеты с PMM основаны на значениях, наблюдаемых в других местах. Это означает, что вменения вне наблюдаемого диапазона данных не произойдут. Таким образом, вы не получите 4 или 5 для новой переменной в качестве вменения.

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

...