Stata解决中文路径安装的问题(超有用!!!)

服务器 0

目录

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 allsysdir 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 , searchnet ,findit 还是 github,都可以将命令安装到当前的plus文件夹啦!

重新运行刚刚的代码

ssc install logout

可以看到logout命令直接被下载到 G:/stata17/ado/plus/ 文件夹中。只要在安装前设置好安装路径,安装外部命令出现的问题就可以完美解决啦 !!!

3. 案例

把今天的作业也放上来凑数(hhh)

clearsysuse auto, clearrename price yrename mpg fdireg y fdiest sto  yl1  gen lny=log(y)gen lnfdi=log(fdi)reg lny lnfdiest sto  yl2 reg y fdi,rest sto  yl3 reg y fdipredict e, rgen ln_e2=log(e*e)reg ln_e2 fdipredict 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文件:

 

也许您对下面的内容还感兴趣: