楼主: thomashyb
2434 5

[Stata高级班] [1,1]的作用? [推广有奖]

  • 0关注
  • 1粉丝

博士生

3%

还不是VIP/贵宾

-

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

楼主
thomashyb 学生认证  发表于 2014-4-6 16:59:25 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

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

第873-905行
cap program drop myreg7
  program define myreg7, eclass
  version 9.2

    syntax varlist [if] [in] [, level(real 95) eform(string)]
    gettoken y x: varlist
    local df : word count `x'  /*模型的自由度*/
    marksample touse
      qui count if `touse'
      local nobs = r(N)      /*记录有效样本数*/
    preserve
      qui keep if `touse'    /*注意该用法*/
      tempname Y X b e t0 V
      mkmat `y', mat(`Y')
      mkmat `x', mat(`X')
      mat `b' = inv(`X''*`X')*`X''*`Y'  /*b=inv(X'X)X'y*/
      mat `e' = `Y' - `X'*`b'
      mat `t0' = `e''*`e'    /*残差平方和*/
      local sigma2 = `t0'[1,1]/(`nobs'-`df')  /* s2=e'e/(N-K) */
      mat `V' = `sigma2'*inv(`X''*`X')  /*beta的方差-协方差矩阵 V=s2*inv(X'*X)*/
    restore

    * 显示结果
      mat `b' = `b''
      dis _n in g "OLS regress for " in y "`y'" in g " on " in y "`x':"
      eret post `b' `V', esample(`touse') obs(`nobs') dof(`df') depname(`y')
      eret display, level(`level') eform(`eform')
    * 存储更多的返回值:暂元
      eret local cmd "myreg6"
      eret local dep_var   `y'
      eret local indep_var `x'
  end

问题:
第892行
local sigma2 = `t0'[1,1]/(`nobs'-`df')  /* s2=e'e/(N-K) */
[1,1]什么意思?作用是什么?能否换成[1,1,1]、[1,2]、[2,1]、[1,1,0]等?
谢谢连老师!
二维码

扫码加我 拉你入群

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

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

关键词:marksample preserve Program varlist regress version 自由度 local count 记录

沙发
arlionn 在职认证  发表于 2014-4-10 09:06:48
a[1,1] 表示 矩阵 a 的第一行第一列上的元素。有关矩阵的内容参见 Stata 初级视频 A4_Matrix.

藤椅
thomashyb 学生认证  发表于 2014-4-10 20:55:23
我理解的是:
把矩阵t0转变成单值,然后才能进行数字运算。

板凳
thomashyb 学生认证  发表于 2014-4-10 21:00:21
按老师的意思:
`t0'[1,1]的意思是:取矩阵t0第一行第一列上的元素(就一数字),再进行`t0'[1,1]/(`nobs'-`df')的运算,对吗?

报纸
arlionn 在职认证  发表于 2014-4-11 08:34:56
没错,`t0'[1,1] 要作为一个整体看待,也可以视为一个单值。

地板
thomashyb 学生认证  发表于 2014-4-11 12:35:55
谢谢连老师!

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-7 04:33