Проблема в том, что вы не указываете какие-либо переменные, которые будут использоваться при расчете показателя склонности (т. Е. Вы даете только Treatment
и Prop.score
, значение которых мне не понятно). Вам нужно передать набор вспомогательных переменных, которые будут использоваться, чтобы соответствовать модели, прогнозирующей оценки склонности.
Кроме того, исходя из моего опыта использования MatchIt
, он выдаст ошибку, связанную с пропущенными значениями, независимо от того, что пропущение не связано с переменными, включенными в модель.
Я рекомендую вам создать вспомогательный фрейм данных с переменными, которые вы хотите использовать в модели, и удалить (или вменять) любые наблюдения с отсутствующими значениями в любой из этих переменных.
Примерно так:
vars_to_keep <- c("Treatment", "x1", "x2", "x3", ... )
aux_df <- df[vars_to_keep]
# Select only complete cases (i.e. drop observations with at least one missing)
aux_df <- aux_df[complete.cases(aux_df), ]
mod_match <- matchit(Treatment ~ x1 + x2 + x3 + ..., method = "nearest", data = aux_df)
Тем не менее, этот урок гораздо более всесторонняя помощь. Я рекомендую взглянуть на это.
Удачи!