-1

我正在尝试使用 [r] 在两个大型数据集上运行 plm,一个具有 400K obs,另一个具有 110 万个。我可以在 SAS 中运行较小的,但较大的不起作用。我试图查看是否可以使用 [r] 并且当我尝试运行下面的代码时,它总是返回如下:

> pvlag<-read.csv(file="pvlag.csv", sep=",")
>  pvpanel<-plm.data(pvlag, c("New_ID", "billmo"))
 pv<-plm(usetotl~livgarea+yardarea+poolsize+lagavg+lat1+nonlat1+grad+grad,data=pvpanel, model="random", random.method=("swar"), index=c("New_ID", "billmo")) 

系列是常数,已被删除solve.default(crossprod(Xm))中的错误:系统在计算上是奇异的:倒数条件数= 6.47315e-22

这两种数据集都会发生,即使当我在 SAS 中运行较小的数据集时,它也会毫无问题地输出估计系数等。有谁知道为什么会这样?另外,由于我正在运行随机效应模型,为什么要删除常数值?我认为这只是固定效应模型的问题?

4

2 回答 2

3

您使用了变量grad两次。如果您使用会在整个样本上产生 1 的虚拟变量也会发生这种情况,例如您有两个虚拟变量,第一个虚拟变量为第一个 200K,第二个为第二个 200K。你不能同时使用两者。你必须选择一个 - 但不管是哪一个。

于 2013-04-23T05:49:14.870 回答
0

对我来说,当我遇到这个错误时,我已经掉进了虚拟陷阱。你的情况不也是这样吗?

于 2012-07-18T18:53:06.117 回答