![](/img/trans.png)
[英]Error: System is computationally singular -> Using pgmm for System GMM regression
[英]“system is computationally singular” error when using `gmm` (GMM Estimation)
嘗試使用R中的GMM包來估計線性模型的參數(af):
LEV1 = a*Macro + b*Firm + c*Sector + d*qtr + e*fqtr + f*tax
Macro,Firm和Sector是具有n行的矩陣。 qtr,fqtr和tax是具有n個成員的向量。
我有一個名為unconstrd的大型數據框,它包含所有數據。 首先,我將數據分解為單獨的矩陣:
v_LEV1 <- as.matrix(unconstrd$LEV1)
Macro <- as.matrix(cbind(unconstrd$Agg_Corp_Prof,unconstrd$R1000_TR, unconstrd$CP_Spread))
Firm <- as.matrix(cbind(unconstrd$ppe_ratio, unconstrd$op_inc_ratio_avg, unconstrd$selling_exp_avg,
unconstrd$tax_avg, unconstrd$Mark_to_Bk, unconstrd$mc_ratio))
Sector <- as.matrix(cbind(unconstrd$Sect_Flag03,
unconstrd$Sect_Flag04, unconstrd$Sect_Flag05, unconstrd$Sect_Flag06,
unconstrd$Sect_Flag07, unconstrd$Sect_Flag08, unconstrd$Sect_Flag12,
unconstrd$Sect_Flag13, unconstrd$Sect_Flag14, unconstrd$Sect_Flag15,
unconstrd$Sect_Flag17))
v_qtr <- as.matrix(unconstrd$qtr)
v_fqtr <- as.matrix(unconstrd$fqtr)
v_tax <- as.matrix(unconstrd$tax_dummy)
然后,我將數據綁定在一起,用於gmm調用的x變量:
h=cbind(Macro,Firm,Sector,v_qtr, v_fqtr, v_tax)
然后,我調用gmm:
gmm1 <- gmm(v_LEV1 ~ Macro + Firm + Sector + v_qtr + v_fqtr + v_tax, x=h)
我收到消息:
Error in solve.default(crossprod(hm, xm), crossprod(hm, ym)) :
system is computationally singular: reciprocal condition number = 1.10214e-18
我提前道歉並承認我是R的初學者,我之前從未使用過GMM。 GMM功能如此通用,我已經查看了網絡上可用的示例,但似乎沒有什么特別足以幫助我的情況。
你試圖適應一個沒有完整排名的矩陣---嘗試排除一些變量和/或尋找錯誤。 沒有您的數據,或者至少是樣本,我們不能說更多。
這更像是Crossvalidated.com的建模問題, 而不是StackOverflow的編程問題。
我很確定我的變量之間沒有線性相關性,但我一次完成了添加一個變量的練習,以查看導致錯誤的原因。 最后,我讓一位同事在SAS上運行GMM,它運行完美,沒有錯誤信息。 我不確定R版本的問題是什么,但此時我有一個解決方案,並在R上給你GMM。
感謝所有試圖提供幫助的人。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.