Я написал программу, которая вычисляет взвешенную регрессию, и теперь я хочу, чтобы результаты оценки сохранялись как вектор e (b), чтобы команда загрузки могла легко получить доступ к результаты, но я все время получаю сообщение об ошибке. Моя программа выглядит следующим образом:Опубликовать e (b) вектор из пользовательской программы в Stata
capture program drop mytest
program mytest, eclass
version 13
syntax varlist [if]
marksample touse
// mata subroutine creates matrix `b', such as mata: bla("`varlist'", "`touse'")
tempname b
matrix `b' = (1\2\3)
ereturn post `b'
end
mytest town_id
ereturn list
Но я продолжаю получать conformability error r(503);
при запуске скрипта. Когда я вместо этого ставил обычную матрицу, такую как ereturn matrix x = b
, все работает нормально, но я хотел бы, чтобы мои коэффициенты сохранялись «правильно» в векторе e(b)
.
Я проверил документацию Stata, но не смог выяснить, почему это не работает. Их рекомендация заключается в кодексе
tempname b V
// produce coefficient vector `b' and variance–covariance matrix `V'
ereturn post `b' `V', obs(`nobs') depname(`depn') esample(`touse')
Варианты сообщения ereturn являются необязательными. Может ли кто-нибудь сказать мне, что мне здесь не хватает? Благодаря!