标签: systemfit

在 R 中使用 Systemfit 出现看似无关的回归错误

我想使用看似无关的回归在横截面上重复估计单个方程,但总是收到错误“LU.dgC(a) 中的错误:cs_lu(A) 失败:接近奇异 A(或内存不足)” ”。

原因是我的数据/设置,其中每个方程估计两个横截面之间的差异(请参见下面的示例)。

一个可重现的例子来说明这一点:标准 SUR 有效 (1),然后我模拟我的设置,归结为 diff-in-diff 方法 (2),估计方程单独起作用 (3),但联合使用SUR (4) 给了我错误。

关于如何解决它的任何想法?或者其他易于实施的方法来同时估计这一点?

1. SUR - 标准设置 ==> 没有错误

            library ("systemfit")
            library( "plm" )
            library("broom")
            library("data.table")

data( "GrunfeldGreene" )

GGPanel <- pdata.frame( GrunfeldGreene, c( "firm", "year" ) )
formulaGrunfeld <- invest ~ value + capital
greeneSur <- systemfit( formulaGrunfeld, "SUR",data = GGPanel,methodResidCov = "noDfCor" )
summary(greeneSur)
Run Code Online (Sandbox Code Playgroud)

2. 数据集适应我的设置

data( "GrunfeldGreene" )

setDT(GrunfeldGreene)
GrunfeldGreene[, dummy_time := ifelse(year>1945, 1, 0),]
GrunfeldGreene[, dummy_group := ifelse(firm=="General Motors"|firm=="Chrysler", 1, 0),]
GrunfeldGreene …
Run Code Online (Sandbox Code Playgroud)

r systemfit

5
推荐指数
0
解决办法
747
查看次数

R 中的非线性看似不相关的回归 (SUR) 施加限制

我正在尝试估计 中包含 5 个方程的非线性看似不相关的回归 (SUR) 模型R,并且我正在研究该包systemfit。一切都很顺利,直到需要对我的方程设置一些限制。使用包systemfit,该函数nlsystemfit()适用于非线性方程。restrict.matrix但它不允许使用该选项/参数nlsystemfit()(它适用于函数 中的线性方程systemfit())。

一个简化的例子是(我认为显示数据与这里无关):

EQ_1 <- Y1 ~ (c1 - x)*Q + c11*G11 + c12*G12 + c13*G13
EQ_2 <- Y2 ~ (c2 - x)*Q + c21*G11 + c22*G12 + c23*G13
EQ_3 <- Y3 ~ (c3 - x)*Q + c31*G11 + c32*G12 + c33*G13


start.values <- c(c1 = 0,c2= 0,c3 = 0,
                  c11 = 0,c12 = 0,c13 = 0,
                  c21 = 0,c22 = …
Run Code Online (Sandbox Code Playgroud)

r cran systemfit non-linear-regression seemingly-unrelated-regression

4
推荐指数
1
解决办法
1234
查看次数