我一直在使用这些estout命令已经有一段时间了,但我现在正在处理一些未连接到互联网的计算机.我从esttab命令中收到以下错误:
current estimation results do not have e(b) and e(V)
为了用一个更简单的例子来测试这个,我尝试在这里复制这个例子:http://repec.org/bocode/e/estout/estpost.html#estpost101
我创建了一个示例数据集,如下所示:
price mpg rep78 foreign
1 3 1 1
2 3 1 1
3 3 1 2
4 3 2 3
5 3 2 5
6 3 2 8
7 3 3 13
8 3 3 21
9 3 3 34
Run Code Online (Sandbox Code Playgroud)
然后根据示例运行以下命令:
estpost summarize price mpg rep78 foreign, listwise
esttab, cells("mean sd min max") nomtitle nonumber
Run Code Online (Sandbox Code Playgroud)
我使用该estpost命令获得了预期的输出,但在运行时遇到了上述错误esttab.我已经多次卸载并重新安装此软件包,使用下载到另一台计算机上ssc install的版本和从http://repec.org/bocode/e/estout/installation.html下载的版本.我觉得我必须遗漏一些明显的东西......任何帮助都会受到赞赏.
编辑:我刚刚与我的同事核实过,似乎他们最近莫名其妙地得到了同样的错误.
这适合我.我怀疑安装错误.尽管您付出了最大的努力,但您之前可能已在estout系统中安装了某些或所有程序的版本.
在Stata中,您需要通过键入命令来检查Stata看到的内容
. which esttab, all
Run Code Online (Sandbox Code Playgroud)
在您工作的每个目录中.如有必要,请对包中的所有其他命令文件重复命名ssc desc estout.你应该看到每个命令的一个(也是唯一一个)版本,主要是在2009年(eststo2008年).
一个更为荒谬的假设是,estoutStata最近的变化已经打破了这个假设.这似乎不太可能,但请先检查以上内容.
(更新)OP回复揭示了一个噩梦场景:已找到难以删除的旧版本.该怎么办?
看看adopath命令.在第一个例子中,只需输入adopath.Stata想要estout在e任何标签上安装东西PLUS.(如果你在美国,你可能想说"离开".)
一种可能性是您可以使用adopath重置PLUS到您具有写访问权限的位置,最好是专用于程序的某个地方.这对已经存在的程序有影响PLUS,现在已经更长时间可见了,所以你需要添加任何现在PLUS作为额外的地方来查看.帮助adopath解释了如何执行此操作.
另一种可能性是Stata在查看之前总是在当前目录或文件夹中查找用户编写的程序PLUS(除非你搞砸了那个命令,我建议不要这样做).所以,只要你想要的程序在当前目录中,那就应该有效.然而,这通常被认为是不好的风格.更糟糕的是,当您更改工作目录时,需要将程序复制到该目录.
您可能需要与管理员联系以删除旧的东西.如果您没有合适的权限,很难使用用户编写的Stata程序.