почему результаты clo git и функции bife (оба в R) отличаются? - PullRequest
1 голос
/ 27 марта 2020

Мне нравится вычислять логистика c фиксированная регрессия панели эффектов (условная максимальная вероятность) в R и получать прогнозируемые значения и / или средние предельные эффекты.

Я нашел две функции: bife и clo git из пакетов выживания

Тем не менее, функции отличаются по своим результатам, и я хотел бы знать, почему и как это возможно исправить. Функция clo git дает мне те же результаты, что и в Stata (xtlo git, fe), но я не нашел способа получить средние предельные / частичные эффекты (объяснение того, как это сделать, также решило бы мою проблему) , В BIFE, где результаты отличаются от результатов clo git и xtlo git в Stata, есть возможность рассчитать PME (getAPEs).

clo git:

clogit_output <- clogit(binary_variable~ x1 + x2 + x3 + strata(id), data = data) 

bife:

bife_output <- bife(binary_variable ~ x1 + x2 + x3 | id, data = data, model = c("logit"))

Мой результат является двоичным (0 или 1), а предикторами являются фиктивные переменные и цифры c. У меня несбалансированная панель с 10.000 респондентов (id) за 12 лет. Я объявил структуру панели следующим образом:

data<- pdata.frame(data, index = c("id", "wave"))

Результат в clo git:

summary(clogit_output) 
        coef exp(coef)  se(coef)       z Pr(>|z|)
X1 -0.173637  0.840602  0.103450  -1.678  0.09326
X2 -0.467696  0.626444  0.115345  -4.055 5.02e-05
X3 0.743621  2.103538  0.035638  20.866  < 2e-16

для bife:

summary (bife_output)
    Estimate Std. error z value Pr(> |z|) 
X1 -0.2135333  0.1140698  -1.872   0.06121
X2 -0.5624223  0.1268271  -4.435  9.23e-06
X3 0.9150707  0.0399252  22.920   < 2e-16

Я зашел так далеко, что Я предполагаю, что при использовании исправления ошибок в bife (bias_corr (bife_output)) я получу те же результаты, что и в STATA или clo git. Тем не менее, в моем случае исправление ошибок выдает ошибку: Ошибка при делении на два шага.

...