Я использую R, чтобы повторить исследование и получить в основном те же результаты, о которых сообщил автор.Однако в какой-то момент я рассчитываю предельные эффекты, которые кажутся нереально малыми.Я был бы очень признателен, если бы вы взглянули на мои рассуждения и приведенный ниже код и выяснили, ошибаюсь ли я в тот или иной момент.
В моей выборке содержится 24535 наблюдений, зависимая переменная "x028bin" является двоичнойпеременная принимает значения 0 и 1, и, кроме того, есть 10 объясняющих переменных.Девять из этих независимых переменных имеют числовые уровни, независимая переменная "f025grouped" является фактором, состоящим из различных религиозных конфессий.
Я хотел бы провести пробитную регрессию, включая манекены для религиозной конфессии, а затем вычислить предельные эффекты.Для этого я сначала устраняю пропущенные значения и использую кросс-таблицы между зависимыми и независимыми переменными, чтобы убедиться, что нет маленьких или нулевых ячеек.Затем я запускаю пробную модель, которая работает нормально, и я также получаю разумные результаты:
probit4AKIE <- glm(x028bin ~ x003 + x003squ + x025secv2 + x025terv2 + x007bin + x04chief + x011rec + a009bin + x045mod + c001bin + f025grouped, family=binomial(link="probit"), data=wvshm5red2delna, na.action=na.pass)
summary(probit4AKIE)
Однако при расчете предельных эффектов со всеми переменными по их средним значениям из пробитных коэффициентов и масштабного коэффициента, предельные эффекты Iполучить слишком мало (например, 2.6042e-78).Код выглядит следующим образом:
ttt <- cbind(wvshm5red2delna$x003,
wvshm5red2delna$x003squ,
wvshm5red2delna$x025secv2,
wvshm5red2delna$x025terv2,
wvshm5red2delna$x007bin,
wvshm5red2delna$x04chief,
wvshm5red2delna$x011rec,
wvshm5red2delna$a009bin,
wvshm5red2delna$x045mod,
wvshm5red2delna$c001bin,
wvshm5red2delna$f025grouped,
wvshm5red2delna$f025grouped,
wvshm5red2delna$f025grouped,
wvshm5red2delna$f025grouped,
wvshm5red2delna$f025grouped,
wvshm5red2delna$f025grouped,
wvshm5red2delna$f025grouped,
wvshm5red2delna$f025grouped,
wvshm5red2delna$f025grouped) #I put variable "f025grouped" 9 times because this variable consists of 9 levels
ttt <- as.data.frame(ttt)
xbar <- as.matrix(mean(cbind(1,ttt[1:19]))) #1:19 position of variables in dataframe ttt
betaprobit4AKIE <- probit4AKIE$coefficients
zxbar <- t(xbar) %*% betaprobit4AKIE
scalefactor <- dnorm(zxbar)
marginprobit4AKIE <- scalefactor * betaprobit4AKIE[2:20] #2:20 are the positions of variables in the output of the probit model 'probit4AKIE' (variables need to be in the same ordering as in data.frame ttt), the constant in the model occupies the first position
marginprobit4AKIE #in this step I obtain values that are much too small
Я прошу прощения, что не могу предоставить вам рабочий пример, так как мой набор данных слишком большой.Любой комментарий будет принята с благодарностью.Большое спасибо.
Лучший,
Тобиас