楼主: thomashyb
2028 2

[Stata高级班] 输入项(选项)的用法 [推广有奖]

  • 0关注
  • 1粉丝

博士生

3%

还不是VIP/贵宾

-

威望
0
论坛币
968 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
49856 点
帖子
75
精华
0
在线时间
289 小时
注册时间
2013-6-14
最后登录
2018-5-8

楼主
thomashyb 学生认证  发表于 2014-4-2 21:23:12 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
连老师:
您好!
::高级部分::
          *          计量分析与Stata应用
          *       ==========================
          *          第八讲  STATA编程进阶   
          *       ==========================
          *              8.3  输入项   
          *                第二部分

第544-565行
cap program drop mysepreg3
  program define mysepreg3
  version 9.2
    syntax varlist [if] [in]
    gettoken y x: varlist  
    tokenize "`x'"         
    local i = 1
    while "``i''" != ""{   
      dis _n _n in y "Regression for " in w "``i''"
      reg `y' ``i'' `if' `in'    /*!!注意此处的变化*/
      est store r_``i++''
    }
    dis _n _n in w "Summary of the Results: "
    est table r_*, stat(r2) star(0.01 0.05 0.1)  
  end



sysuse auto, clear
  mysepreg3 price wei len turn foreign if price<10000
  mysepreg3 price wei len in 20/60


第564行mysepreg3 price wei len turn foreign if price<10000
Stata结果显示
------------------------------------------------------------------------------
    Variable |   r_weight        r_length         r_turn         r_foreign   
-------------+----------------------------------------------------------------
      weight |  .45870576*                                                   
      length |                  18.249028**                                   
        turn |                                  18.013473                     
     foreign |                                                  894.92273**   
       _cons |  3846.8138***    1789.4139       4454.7079**     4878.9773***  
-------------+----------------------------------------------------------------
          r2 |  .04943905       .07727094       .00283984       .08756693     
------------------------------------------------------------------------------
                                           legend: * p<.1; ** p<.05; *** p<.01

这个好理解。
第565行 mysepreg3 price wei len in 20/60
Stata结果显示

------------------------------------------------------------------------------
    Variable |   r_weight        r_length         r_turn         r_foreign   
-------------+----------------------------------------------------------------
      weight |  1.7157901***                                                  
      length |                  50.831656***                                 
        turn |                                  18.013473                     
     foreign |                                                  894.92273**   
       _cons |  659.07758      -3749.7836       4454.7079**     4878.9773***  
-------------+----------------------------------------------------------------
          r2 |  .26003544       .18006048       .00283984       .08756693     
------------------------------------------------------------------------------
                                           legend: * p<.1; ** p<.05; *** p<.01

问题:
根据第565行 mysepreg3 price wei len in 20/60的命令,以及mysepreg3(自编程序),应该是price分别对weight和length作回归,两次回归两个结果,为什么却有四个结果(包括 r_turn r_foreign)?
谢谢连老师!

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:regression regressio Program varlist stata编程 version local

沙发
arlionn 在职认证  发表于 2014-4-10 09:14:41
est table r_*, stat(r2) star(0.01 0.05 0.1) 使用了通配符,会把所有 r_ 开头的结果都列出来。
你可以再执行第二条命令之前先执行 estimate clear ,把内存中的回归结果清空。

藤椅
thomashyb 学生认证  发表于 2014-4-10 20:52:36
哦,原来是这样!

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-28 17:40