我正在寻找安装Stata软件包“ st0085_2.pkg”的用户编写的“ esttab”。通常,我会输入以下内容来执行此操作:
net install st0085_2.pkg
Run Code Online (Sandbox Code Playgroud)
在这种情况下,它输出:
checking st0085_2 consistency and verifying not already installed...
installing into c:\ado\plus\...
file c:\ado\plus\next.trk already exists
r(602)
Run Code Online (Sandbox Code Playgroud)
所以我更改了ado目录路径,并将ado安装到其他地方(未经管理员批准,我无法删除next.trk):
net set ado "U:\Documents\Stata\AMIE\ado"
net install st0085_2.pkg
Run Code Online (Sandbox Code Playgroud)
安装成功,但仍无法识别esttab命令,我尝试查找ado的位置,并输出尚未安装的信息。
我看不到STATA如何说出下载时的ado文件已经存在,但是找不到该软件包时呢?除非他们在不同的目录中查找,但是即使我不努力设置新路径(我尝试过许多组合),它仍然找不到包。
当我在其他计算机上使用esttab时,这特别令人沮丧。
尽管我怀疑原始海报仍然存在,但答案对于遇到相同情况的其他人可能很有趣。
OP在这里遇到的问题是他没有正确的权限来修改/删除默认ado文件夹中的next.trk文件。通常,当您在(大量)锁定的服务器上没有管理员权限时,就会发生这种情况。
一种解决方案是直接复制文件:但是,如果服务器确实被锁定,或者您的程序具有未指定的依赖性,则这可能会非常棘手。
替代方法是更改您的ado文件夹。OP更改了net installthrough 的位置,从而采取了正确的第一步net set ado "somefoldername"。但是,他们错过了第二步,该步骤告诉Stata“ somefoldername”是adopath的一部分。
这是通过完成的adopath ++ "somefoldername"。如果我没记错的话,只要Stata打开,它就一直保持活动状态。为了使它“永久”,应将代码行添加到profile.dodofile中,该文件将在Stata启动时自动运行。有关profile.do文件的更多信息,请参见Stata FAQ。