Вменение Амелии в R для исключения участников, не получивших предметы

Я пытаюсь использовать amelia для вменения моих данных с использованием единственного вменения максимизации ожидания. Однако в моей выборке есть две группы, некоторые из которых не получили все элементы опроса. Поэтому я не хочу вменять ответы этим участникам. Если участники ответили 'yes' на 'Seen.Psychologist' вопрос, им были представлены все вопросы, если они ответили, 'no' 16 вопросов им не были представлены, поскольку они не имели отношения к делу. Эти участники не получили следующие переменные: CulturalSafety_var, "Practical", "Referral" и "Wait.time".

Мои текущие вменения выглядят следующим образом.

am_imp <- amelia(x = data[, c(SafetyBehaviour_var, CulturalSafety_var, 
                              Anxiety_var, SelfStigma_var, Disclosure_var, 
                              PublicStigma_var, Motivation_var, 
                              NonAttendance_var, "Employment", "Education",
                              "Referral", "Ethnicity", "Wait.time", "Practical")], 
                 noms = c("Practical"), 
                 m = 1, 
                 boot.type = "none")

Один из вариантов - не включать эти элементы в вменение, но тогда возникнут другие проблемы с остальной частью сценария. Например, когда я объединяю вмененные данные с исходным набором данных.

Другой способ обойти это (как предложил мой руководитель) заключается в следующем:

  1. Проведите первый раунд вменения, используя только те переменные, которые все должны были видеть, для всей выборки.

  2. Проведите второй раунд вменения только с теми переменными, которые были представлены, если участники ответили «да» на встречу с психологом и использовали только этих участников.

  3. Объедините (rbind) вмененные данные из # 2 со строками по этим переменным для участников, которые не видели психолога (целая куча полностью отсутствующих данных)

  4. Объедините (cbind) вмененные наборы данных из №1 и №3 и любые другие оставшиеся переменные, к которым вы не применяли вменение, внимательно следя за порядком участников в наборах данных.

Однако это означало бы, что вменения не будут такими точными, поскольку они основаны только на подмножестве переменных.

Я надеюсь, что есть замечательный гуру Амелии, у которого может быть предложение, которое я мог бы попробовать ...


person BrookeY    schedule 30.04.2020    source источник


Ответы (1)


Предложения вашего руководителя мне понятны. Рассмотрим следующую таблицу:

seen psych.  Imp. 1 (restr.)  Imp. 2 (ext.)    used
      FALSE             TRUE          FALSE  Imp. 1
       TRUE             TRUE           TRUE  Imp. 2

Первый столбец делит вашу выборку на две части, независимо от того, посещал ли психолог или нет. В столбцах Imp* указано, включены ли они в условное исчисление или нет. Столбец used показывает, что будет использовано для rbind окончательного набора данных.

Величина 1 применяется к ограниченному набору переменных, т. Е. К информации, которая доступна для всей выборки.

Величина 2 применяется к расширенному набору переменных, который доступен только для seen psych. == TRUE. Он считает расширенные переменные CulturalSafety_var, Practical, ... условно исчисленными (а также использует другие переменные для прогнозирования!). Здесь вы можете использовать Imp. 1 (подмножество seen psych. == TRUE) в качестве основы, которая уже должна быть завершена.

Как показано в столбце used, для seen psych. == FALSE используется только Imp. 1. Для seen psych. == TRUE мы используем Imp. 2, который включает Imp. 1 и недавно вычисленные расширенные переменные. Imp. 1 переменные больше не должны изменяться в Imp. 2. Расширенным переменным вменяется максимум информации; вы не можете использовать seen psych. == FALSE для прогнозирования расширенных переменных, потому что нет никакой информации.

Следовательно, в окончательном наборе данных rbinded все ограниченные переменные должны быть завершены, а расширенные переменные должны иметь пропуски для seen psych. == FALSE.

(Что вы могли бы подумать, так это взвесить компромисс между вменением ограниченных переменных seen psych. == TRUE, как описано выше, или включением расширенных переменных для их прогноза. Однако в последнем случае вы можете использовать только seen psych. == TRUE подмножество для вменения, и вы потеряете всю информацию seen psych. == FALSE, и результат вменения будет хуже.)

person jay.sf    schedule 01.05.2020