在为R使用MSBVAR包时遇到以下问题:当我尝试使用gibbs.A0()函数计算后验时,我收到错误:
> A0.posterior <- gibbs.A0(bsvar1, N1=1000, N2=1000)
Normalization Method: DistanceMLA ( 0 )
Error in gibbs.A0(bsvar1, N1 = 1000, N2 = 1000) :
REAL() can only be applied to a 'numeric', not a 'integer'
这个bsvar的构造如下:
bsvar1 <- szbsvar(dane1, p=4, z = NULL, lambda0=1, lambda1=0.5,
lambda3=0.1, lambda4=1, lambda5=1,
mu5=1, mu6=1, matB_id, qm=4)
并且bsvar中唯一的整数元素(标记为&#34; int&#34;)是&#34; n0&#34;,它代表&#34; m维列表中的自由参数数量等式i的A0矩阵。&#34;和我的识别矩阵,但是当我输入
时> is.numeric(matB_id)
我得到了
[1] TRUE
但是,我也输入:
> is.integer(matB_id)
[1] TRUE
我用于BSVAR估算的数据矩阵具有列名而没有行名。
任何人都可以建议我如何解决这个问题,即让gibbs.A0()函数有效吗?