查看原文
其他

Stata+搜狗=?=效率!(搜狗自定义短语)

Stata连享会 2020-02-10

1. Stata 输入:蜗牛变猎豹

8 月中旬参加完首届 stata 用户大会后,测试了多种 Stata 编辑器,包括 sublime text 3 (ST3)atom, VScode 等等。最终发现我的需求似乎还无需用这些高大上的东西,因为 MC>>MR

我的需求很简单:把重复的工作系统化、自动化
我的思路很简单:优化组合现有工具 = 新工具

比如,我做 Stata 讲义时,经常要输入 sysuse "auto.dta", clear,或者 sysuse "nlsw88.dta", clear,每次都输入这么长一串,很烦。又如,每次做论文中的几张基本表格(表1:基本统计量;表2:相关系数矩阵;表3:回归结果),都要找出以前的代码,复制粘贴过来。若是自己重新写,怎么着也要折腾个 5-10 分钟吧。

若是有个快捷命令就好了。于是,我用搜狗输入法自带的【搜狗自定义短语配置】功能,把这些需要经常用的命令、代码都做成短语,只要输入几个字母就出现一大串代码。

然后,我的打字效率就从蜗牛猎豹了:


2. 如何定义【搜狗自定义短语】

你可以在简书上搜索关键词【搜狗自定义短语】,找到很多相关的教程。这里,我只做简要说明。

第一步:点击[设置],快捷键 Ctrl+Shift+M


第二步:点击【设置属性】



第三步:依次点击【高级设置】【自定义短语设置】【直接编辑配置文件】


第四步:在弹出的文本文档底部添加自定义短语设置,具体内容参见下文【3. 我的配置文件】,你可以直接粘贴过去,保存即可


第五步:编辑完短语后,按图依次点击“应用”  “确定”, 即可开始愉快的输入了


3. 我的配置文件

下面贴出我的部分配置文件,你只需选择需要的,贴入你的配置文件中,根据自己的习惯修改关键词或缩写设定即可。

3.1 Stata 常用命令之搜狗短语设置

st,1= Stata   lc,1=local "" gl,1=global "" ests,1=est store m sh,1=shellout "$R\.pdf" vb,1=view browse "" trace,1=set trace on trace,2=set trace off sysuse,1=sysuse "auto.dta", clear sysuse,2=sysuse "nlsw88.dta", clear use, 1=use ".dta", clear pre,1= preserve restore log,1= cap log close log using logname, text replace log close deli,1= #delimit ; #delimit cr

3.2 基本统计和回归结果相关

fsum,1=  local v " " //连续变量  local c " " //类别变量  local s "$Out\Table1_sum" //文件名(或路径\文件名)  logout, save("`s'") excel replace: ///          fsum `v', s(mean sd p50 min max) cat(`c') label tabstat,1= *-----表1:基本统计量-------  local v " " //填入变量名  local s "$Out\Table1_sum" //存储的文件名(或路径\文件名)  logout, save("`s'") excel replace: ///          tabstat `v', stat(mean sd p50 min max) f(%6.2f) c(s) pwcorr,1= *-----表2:相关系数矩阵-------  local v " " //填入变量名  local s "$Out\Table2_corr" //存储的文件名(或路径\文件名)  logout, save("`s'") excel replace: ///          pwcorr_a `v', format(%6.2f) //star(0.05) esttab,1= *-----表3:回归结果-------  local s "using $Out\Table3_reg.csv"  //执行时包括这一行会输出Excel表格  local m "m1 m2 m3"  esttab `m' `s', nogap compress replace   ///         b(%6.3f) s(N r2_a) drop(`drop')   ///         star(* 0.1 ** 0.05 *** 0.01)      ///           addnotes("*** 1% ** 5% * 10%") esttab,2=  *----------------------------------------------------begin--------    local s "using $Out\Table3_reg.csv"    local m "m1 m2 m3"    local drop ""    #d ;    esttab `m' `s', compress nogap replace      b(%6.3f) t(%6.2f) star(* 0.1 ** 0.05 *** 0.01)      stats(Cluster N r2_a, fmt(%3s %12.0f  %9.3f)) varwidth(20)      drop(`drop')      title("Table1 Determinants of Women's Wage")      mtitle("OLS" "OLS" "OLS with Occupation dummies") ;    #d cr  *----------------------------------------------------over--------- twoway,1=    *------------------------------------------------------------Begin    local gname "$Out\Fig01.wmf" //图形名称和存储位置    #delimit ;      twoway ( )             ( )      ,      ylabel(, angle(0) grid)      legend(ring(0) position(3))      note("数据来源: 雅虎财经!")      ;    #delimit cr    graph export "`gname'", replace   *------------------------------------------------------------Over

图片版:

3.3 Stata 程序相关:循环语句和条件语句等

prog,1= capture program drop program define  version 13.0 end   if,1= if { } else{ } for,1= forvalues i=1/`N'{ }

3.4 Stata 讲义短语

title,1= *------------------ *- *------------------ title,2= *=================== *- *=================== dotitle,1= *-------------------------------- *-日期: *-目的: *-方法: *-作者:连玉君,中山大学岭南学院金融系 *-------------------------------- statalxh,1= *-------- Stata连享会 -----------     *- fanli,1=Stata 范例: scom,1=  *-Comments:  * 1  * 2 begin,1= *-----------------Begin----------- *-----------------Over------------ *-Notes: * 1. * 2.

3.5 Markdown 相关短语和关键词

md,1=Markdown toc,1=[toc] yy,1=`` lianjie,2=- []() lianj,1=[]() btsan,1=### bter,1=## tupian,1=![]() zuozhe,1=> 作者:连玉君,中山大学岭南学院金融系 lianxh,1= --- ![Stata连享会二维码](http://wx1.sinaimg.cn/mw690/8abf9554gy1fj9p14l9lkj20m30d50u3.jpg "扫码关注 Stata 连享会") riqi,1=#$year.$month.$day riqi,2=#$year年$month月$day日星期$weekday

致谢

本文受 《永澄:凡是出现两次的事情就要考虑系统化、自动化》 的启发。

欢迎补充

可以直接在本文底部添加评论,亦可发送邮件至 StataChian@163.com



往期精彩推文


Stata连享会简介

  • Stata连享会由中山大学连玉君老师团队创办,旨在定期与大家分享Stata应用的各种经验和技巧。

  • 公众号推文同步发布于 【简书-Stata连享会】 和【知乎-连玉君Stata专栏】。可以在简书知乎中搜索关键词StataStata连享会后关注我们。


联系我们

  • 欢迎赐稿: 欢迎将您的文章或笔记投稿至Stata连享会,我们会保留您的署名;录用稿件达五篇以上,您将会免费获得Stata现场培训(初级或高级选其一)资格。

  • 意见和资料: 欢迎您的宝贵意见,您也可以来信索取推文中提及的程序和数据。

  • 招募英才: 欢迎加入我们的团队,一起学习Stata。合作编辑或撰写稿件五篇以上,即可免费获得Stata现场培训(初级或高级选其一)资格。

  • 联系邮件: StataChina@163.com


    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存