Я пытаюсь создать таблицу баланса, используя этот код:
library(ebal)
library(matching)
mout <- MatchBalance(DV ~ someIVs, data=dataset)
balance.test <- baltest.collect(matchbal.out=mout, var.names=colnames(dataset)[-c(unnecessary_variables)], after=FALSE)
balance.test
bal.output <- round(balance.test[,c("mean.Tr","mean.Co","T pval","KS pval")],2)
stargazer(bal.output,title = "Balance Test on Olken Data", type = "text")
Теперь я использовал этот код для других данных, и он работал нормально. На этот раз, однако, я получаю значимые значения «mean.Tr» (среднее значение для лечения) и «mean.Co» (среднее значение для контроля), но значения p для t-критерия и KS-критерия указаны как 0 с. Некоторые из p-значений теста KS сообщаются как NA или (как их выводит stargazer) как пустые ячейки.
Таблица вывода выглядит примерно так:
Balance Test
mean.Tr mean.Co T pval KS pval
IV1 25.820 34.850 0 0
IV2 10.350 12.120 0 0
IV3 0.840 0.250 0
IV4 0.060 0.030 0.130
IV5 0.190 0.870 0
IV6 2,095.570 19,428.750 0 0
IV7 1,532.060 19,063.340 0 0
IV8 0.710 0.090 0
IV8 0.600 0.100 0
Я знаю, что было бы легче загрузить некоторые образцы данных, но, к сожалению, я не могу воспроизвести этот результат с сфабрикованными данными. Поэтому мой вопрос: что в моих данных (или в моем коде) может вызывать такое поведение?