Matrix spdep包,errorsarlm():矩阵中的元素太多

Matrix spdep包,errorsarlm():矩阵中的元素太多,matrix,spdep,Matrix,Spdep,我在一台带有64位操作系统和7.8 GB RAM的PC上使用spdep软件包的errorsarlm()函数。我的管理员分配的配额是12 GB my errorsarlm()的输入为: 1) 非对称权重矩阵,由.gwt转换而来(通过nb2listw函数;1.7MB)。它是一个k=4的最近邻矩阵,用于85684个区域(#个观测值): 2) 一个246.3 mb的CSV数据集,我在errorsarlm()模型中使用了80个变量。每个变量有85684个观察值 当我运行基于80个变量的简单线性回归(lm)

我在一台带有64位操作系统和7.8 GB RAM的PC上使用spdep软件包的errorsarlm()函数。我的管理员分配的配额是12 GB

my errorsarlm()的输入为:

1) 非对称权重矩阵,由.gwt转换而来(通过nb2listw函数;1.7MB)。它是一个k=4的最近邻矩阵,用于85684个区域(#个观测值):

2) 一个246.3 mb的CSV数据集,我在errorsarlm()模型中使用了80个变量。每个变量有85684个观察值

当我运行基于80个变量的简单线性回归(lm)时,我没有问题。但是,当我使用默认参数运行errorsalm模型时,我立即得到以下消息:

'Error in matrix(0, nrow = n, ncol = n) : too many elements specified'
回溯()告诉我:

6: matrix(0, nrow = n, ncol = n)
5: listw2mat(listw)
4: eigenw(get("listw", envir = env))
3: eigen_setup(env, which = which)
2: jacobianSetup(method, env, con, pre_eig = con$pre_eig, trs = trs, 
       interval = interval)
1: errorsarlm(Lnp_N ~ Lnlivings_ + Yearofcon_ + Garden + Lnkirche_N + 
       Station_N + Bus_N + LnschuleA_ + Lnind200_N + Dem_N + Slope_N + 
       Aspect_N + Income_N + InhaHa_N + Lnlake_N + Lnriver_N + Riversize5 + 
       Riversize6 + Riversize7 + Riversize8 + Riversize9 + Riversize1 + 
       Greensp_N + Lnpark_N + Lnhighw_N + Lnbadi_N + LakeNat + LakeAlt_N + 
       LakeArea_N + Zh + Be + Lu + Ur + Sz + Ow + Nw + Gl + Zg + 
       Fr + So + Bs + Bl + Sh + Ar + Ai + Sg + Gr + Ag + Ti + Vd + 
       Vs + Ne + Ju + Tg + Q052 + Q053 + Q054 + Q061 + Q062 + Q063 + 
       Q064 + Q071 + Q072 + Q073 + Q074 + Q081 + Q082 + Q083 + Q084 + 
       Q091 + Q092 + Q093 + Q094 + Q101 + Q102 + Q103 + Q104, heddata, 
       w4n)
[1] 342736
使用矩阵nb对象的sum(card())进行矩阵密度检查,该对象是从.gwt和read.gwt2nb转换而来的,它告诉我:

6: matrix(0, nrow = n, ncol = n)
5: listw2mat(listw)
4: eigenw(get("listw", envir = env))
3: eigen_setup(env, which = which)
2: jacobianSetup(method, env, con, pre_eig = con$pre_eig, trs = trs, 
       interval = interval)
1: errorsarlm(Lnp_N ~ Lnlivings_ + Yearofcon_ + Garden + Lnkirche_N + 
       Station_N + Bus_N + LnschuleA_ + Lnind200_N + Dem_N + Slope_N + 
       Aspect_N + Income_N + InhaHa_N + Lnlake_N + Lnriver_N + Riversize5 + 
       Riversize6 + Riversize7 + Riversize8 + Riversize9 + Riversize1 + 
       Greensp_N + Lnpark_N + Lnhighw_N + Lnbadi_N + LakeNat + LakeAlt_N + 
       LakeArea_N + Zh + Be + Lu + Ur + Sz + Ow + Nw + Gl + Zg + 
       Fr + So + Bs + Bl + Sh + Ar + Ai + Sg + Gr + Ag + Ti + Vd + 
       Vs + Ne + Ju + Tg + Q052 + Q053 + Q054 + Q061 + Q062 + Q063 + 
       Q064 + Q071 + Q072 + Q073 + Q074 + Q081 + Q082 + Q083 + Q084 + 
       Q091 + Q092 + Q093 + Q094 + Q101 + Q102 + Q103 + Q104, heddata, 
       w4n)
[1] 342736
由于错误消息立即出现,内存使用量不会增加。是否有spdep允许的最大矩阵大小,我已经超过了?还是有不同的解释

当我在errorsarlm()中包含
method=“LU”
method“MC”
时,模型运行良好并给出结果

希望有人能帮我弄明白其中的道理

谢谢

戴安娜