Stata解决中文路径安装的问题(超有用!!!)
目录
1. 问题简介
2. 设置安装路径
3. 案例
1. 问题简介
安装外部命令时,可能会出现“cannot write in directory C:\Users\�ַ�\ado\plus\l”的错误提示,这是因为该文件夹的权限不可取,简单来说就是路径出现中文字符。Stata的安装路径要求是英文,不能包含中文字符,所以安装过程中可能会遇到的情况:
此时,我们查看stata当前的安装及工作路径,输入“sysdir”,在下图中可以看到,stata、base、site、plus、personal、oldplace等文件夹的位置,其中base文件夹用于存储 Stata自带的基础命令 , plus文件夹用于存储外部命令 , personal用于存储自己编写的命令和do文件。
我们下载的外部命令通常为 .ado 格式,通常是储存在 ado文件夹中的 plus文件夹中,当用户(Users)名称设置为中文时,Stata会显示“cannot write in directory”无法读入该文件夹,导致安装失败,电脑用户名一般修改起来较为困难,那该如何解决这样的问题呢?下面就来介绍一段程序,可以完美解决这样的问题。
2. 设置安装路径
一般来说,Stata软件装到D盘或者其他盘,外部命令下载的文件夹通常还是在C盘,下面的程序可以帮助我们设置外部命令下载的位置:
adopath+"G:\stata17\ado\plus" //显示当前stata路径
clear all
sysdir set PLUS "G:\stata17\ado\plus" //设置外部命令存放方式
sysdir set PERSONAL "G:\ado\person" //设置用户个人编写的命令的存储位置
sysdir set OLDPLACE "G:\ado\oldplace"
sysdir
运行此程序,并将此程序保存在stata安装路径下,如图:
此时可以看到程序运行之后,stata的工作路径发生改变,如图:
从上图可以看到,Stata的工作路径已经被修改了, plus、 personal、 oldplace文件夹的路径都已经修改到了G盘中。运行完以上步骤后, Stata就能用之前安装的命令了,不管是运用ssc , search,net ,findit 还是 github,都可以将命令安装到当前的plus文件夹啦!
重新运行刚刚的代码
ssc install logout
可以看到logout命令直接被下载到 G:\stata17\ado\plus\ 文件夹中。只要在安装前设置好安装路径,安装外部命令出现的问题就可以完美解决啦 !!!
3. 案例
把今天的作业也放上来凑数(hhh)
clear
sysuse auto, clear
rename price y
rename mpg fdi
reg y fdi
est sto yl1
gen lny=log(y)
gen lnfdi=log(fdi)
reg lny lnfdi
est sto yl2
reg y fdi,r
est sto yl3
reg y fdi
predict e, r
gen ln_e2=log(e*e)
reg ln_e2 fdi
predict ghat,xb/*前面四步都是为了这一步,这一步是在预测拟合值,xb可以删掉*/
gen se=exp(ghat)
reg y fdi[aw=1/se]
est sto yl4
local d "using "C:\Users\230468\Desktop\11.rtf"" // 输出到指定地方的word文档中
local a "yl1 yl2 yl3 yl4 "
esttab `a' using "G:\work\01.rtf", b(%6.4f) se(%6.4f) nogap compress ///
star(* 0.1 0.05 * 0.01) ///
ar2 scalar(N) replace ///
// 使得回归结果中不报告虚拟变量的系数,而且用Yes进行设置)
最后生成一个rtf文件: