Если вы не хотите сохранять членство в паре, просто задайте поднабор данных, используя возвращенные компоненты t_id
и c_id
вывода cardmatch
. Например, если выходной объект был назван cm
, а ваш набор данных был назван data
, выполнение следующего создаст набор данных только из соответствующих единиц:
data_matched <- data[c(cm$t_id, cm$c_id),]
Если вы заботитесь о членстве в паре и если вы хотите создать переменную, которая представляет идентификатор пары каждого блока, вы можете использовать следующий код (который предполагает, что имена строк data
отсутствуют или только числа, индексирующие строку):
pair_df <- data.frame(pair = factor(c(seq_along(cm$t_id),
seq_along(cm$c_id))),
row.names = c(cm$t_id, cm$c_id))
data_matched <- merge(data, pair_df, by = 0, all.x = TRUE, sort = FALSE)[-1]
Любые несопоставленные единицы будут иметь NA
для новой переменной pair
(или вы можете установить all.x = FALSE
, чтобы сохранить только совпадающие единицы). Вы можете использовать переменную pair
в качестве случайного эффекта в модели со смешанным эффектом, используя glmer()
в пакете lme4
(эквивалентно парному t-критерию) или в стандартных кластерных ошибках в стандартной регрессионной модели с использованием glm()
для учета спаривания в вашем анализе. Вы можете добавить ковариаты для повышения точности и уменьшения остаточного смещения.