美文网首页stata连享会stata STATA
Stata+搜狗=?=效率!(搜狗自定义短语)

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

作者: stata连享会 | 来源:发表于2017-09-25 15:50 被阅读941次

    作者:连玉君 (知乎 | 简书 | 码云)

    Stata 现场培训报名中

    原始 Markdown 文档下载 | 码云-原始短语定义文件(持续更新中……)

    Stata连享会:搜狗+Stata = 效率

    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 分钟吧。

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

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

    Stata+搜狗自定义短语-范例:一分钟做好三张表 Stata+搜狗自定义短语-范例2:如此快乐滴写Stata程序

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

    你可以在简书上搜索关键词【搜狗自定义短语】,找到很多相关的教程,例如:输入法“自定义短语设置”还可以这么玩搜狗输入法-自定义短语设置的神奇妙用。这里,我只做简要说明。

    第一步:点击[设置],快捷键 Ctrl+Shift+M 第二步:设置属性 第三步:依次点击【高级设置】-->【自定义短语设置】-->【直接编辑配置文件】 第四步:在弹出的文本文档底部添加自定义短语设置,保存即可 第五步:按图依次点击“应用”--> “确定” 即可开始愉快的输入了

    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 范例:
    
    path,1=
    *-注意:执行后续命令之前,请先执行如下三条命令
      global path "`c(sysdir_personal)'\PX_A_2017b\A1_intro"  //定义课程目录
      global D    "$path\data"      //范例数据
      global R    "$path\refs"      //参考文献
      global Out  "$path\out"       //结果:图形和表格
      adopath +   "$path\adofiles"  //自编程序 
      cd "$D"
      set scheme s2color  
      *-note: 
      *   `c(sysdir_personal)' 等价于 D:\stata15\ado\personal
    
    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=> 作者:连玉君,中山大学岭南学院金融系
    zuozhe,2=
    > 作者:连玉君 ([知乎](https://zhuanlan.zhihu.com/arlion) | [简书](http://www.jianshu.com/u/69a30474ef33) | [github](http://github.com/StataChina))
    
    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 连享会(公众号:StataChina)】由中山大学连玉君老师团队创办,旨在定期与大家分享 Stata 应用的各种经验和技巧。
    • 公众号推文同步发布于 【简书-Stata连享会】【知乎-连玉君Stata专栏】。可以在简书知乎中搜索关键词StataStata连享会后关注我们。
    • 点击推文底部【阅读原文】可以查看推文中的链接并下载相关资料。
    • Stata 现场培训报名中

    联系我们

    • 欢迎赐稿: 欢迎将您的文章或笔记投稿至Stata连享会(公众号: StataChina),我们会保留您的署名;录用稿件达五篇以上,即可免费获得 Stata 现场培训 (初级或高级选其一) 资格。
    • 意见和资料: 欢迎您的宝贵意见,您也可以来信索取推文中提及的程序和数据。
    • 招募英才: 欢迎加入我们的团队,一起学习 Stata。合作编辑或撰写稿件五篇以上,即可免费获得 Stata 现场培训 (初级或高级选其一) 资格。
    • 联系邮件: StataChina@163.com

    往期精彩推文

    Stata连享会推文列表

    Stata 现场培训报名中

    连玉君Stata现场班报名中

    相关文章

      网友评论

      • lee415:手上能这样操作就牛了
        lee415:@lee415 手机上如果有就好了,
        手机版搜狗输入法不支持,
        stata连享会:@lee415 可以注册一个搜狗输入法的账号,将无论在任何一台电脑上登录,都可以同步你之前已经定义过的短语,以及你之前的输入习惯,所以用的时间越长,你的效率就会越高
      • stata连享会:我更新了文中的链接,已经定义好的短语可以直接到我的码云(https://gitee.com/arlionn/sougou)查看或下载。

      本文标题:Stata+搜狗=?=效率!(搜狗自定义短语)

      本文链接:https://www.haomeiwen.com/subject/chufextx.html