FAQs答疑-2021寒假-Stata初级班-Day2-连玉君

发布时间:2021-01-28 阅读 2717

连享会·课程答疑


Stata 初级班-Day2,任课老师:连玉君

Update: 2021/1/27 11:51

Stata 连享会   主页 || 视频 || 推文 || 知乎

温馨提示: 定期 清理浏览器缓存,可以获得最佳浏览体验。

New! lianxh 命令发布了:
随时搜索连享会推文、Stata 资源,安装命令如下:
. ssc install lianxh
使用详情参见帮助文件 (有惊喜):
. help lianxh

课程详情 https://gitee.com/arlionn/Course   |   lianxh.cn

课程主页 https://gitee.com/arlionn/Course


目录


2021.1.26 初级班 Day 2 答疑

Q1. 第二讲的 1005 行文档中的 esttab 后面 nogap 是什么意思?

A: 取消垂直间距,具体见 help esttab。 就大家在看那个讲义的时候啊,有些选项加了有些选项没有加,你自己练习的时候呢,你只需要把那个选项去掉,你看一看执行一遍的效果是什么样子,你就知道那个选项的作用了,或者呢,你就任何一个命令,你不知道那个选项的具体含义,你就直接去 help,就像我们助教说的啊,去看一下它的帮助文件,就可以知道那个选项具体的解释了。

Q2. 请问我在 ssc intall legend 的时候显示搜索不出来是怎么回事呢?

A: 应该是命令操作错误,legend 是选项。

Q3. 请问有一些命令可以跑出来,但是 help command 的时候查不到帮助文件(例如绘图的 yscale ytitle 等等)。这种情况是怎么回事呢?

A: 那是选项,需要查看主命令。

. sysuse "auto.dta", clear
. twoway scatter price wei , ytitle("汽车价格")

应该查看 help twoway scatterhelp scatter##axis_choice_options

Q4. 1)建模过程中可能遗漏重要的解释变量,如何解决?2)变量间可能存在各种形式的交互作用,如何进行变量交互性与异质性检验?

A: 尽量不要遗漏重要变量,如果怀疑(尽量自己不要怀疑),产生内生问题,解决内生性。变量交互了,就需要再异质性了,例如是否国有企业和核心解释变量交互了,就没必要再进行分组回归。

我觉得写命令呢倒不是什么难事儿,就刚才有些同学在群里说,老师你边操作边讲的就是 rex 就出来了,我如果讲易方差的地方呢,我就加一个 robust 的选项,等一会加那个虚拟变让的时候,我就一个 I 点类别变量就全部搞定了,根本不需要花那么多的时间去讲操作,但是背后的原理你要搞明白,你才知道那个系数怎么解释啊,这是我的讲课的时候一个痛点了哈,所以有些人听这一块内容的时候总觉得说你赶紧去操作吧,那操作的话就 5 分钟就全部搞定了啊。回到这个交互效应的这个事上来啊,你要在模型里加一个交互效应,写命令特简单,但是背后要有足够的理论依据,你为什么认为 X 和 Y 之间的关系就会受到 Z1 的影响,而不是 Z2 的影响,这个你需要根据前期的文献和你理论分析为基础,才能够在模型里面设定到底 Z 还是 Z2 跟 X 的教程。我觉得这已经不是最好的问题了啊,就是纯粹是你看文献啊理论分析的这个问题。那一次性检验呢也是你看看从哪几个角度啊,因为早先做国内的金融研究的文章,大家基本上都会分国企民营是吧,然后后来有一波人呢,就是去分析这个嗯民营里边的家族企业单独滴露出来去看,然后再后面有一波呢,就开始做这个国退民进呀,国际民退的,还有这个国有企业的混合所有制改革啊,那时候呢,整个的异质性分析呢又变掉了啊,那现在呢,最近这 5 年里面中国的企业全球去买买买啊,我们以前做研究 FDA 就是外资对国内的投资,我们现在就开始研究我们对外的投资啊,所以你那个异质性分析呢,就会随着这些应用场景的变化呢,也在相应地发生变化,这个也完全是决定于你的故事啊,而不是私下基本的东西。

Q5. 连老师好,请问 ado 文件路径中的斜线,向左和向右的有什么区别?就是"/"和"",使用惯例是什么?谢谢!

A: 我测试了一下啊,就是在 windows 系统下面左杠和右杠呢,是目前来讲啊,在我这个操作系统下面是没有分别的,那为了跟保持跟那个苹果操作系统一致呢,我建议大家都统一的用这个 / 来分隔路径。

Q6. 第三章中第 555 行代码中,后面的 robust 前面的逗号可以去掉吗?或者说为什么加它?

A: robust 为选项,必须加逗号,不然当作变量处理,报错。

Q7. 请问,对暂元的起名有什么惯例或规则?如:讲义 634 - 638 行的程序,为什么用 e, j, h? 是自己的习惯吗?还是有这方面的惯例?谢谢!

A: 根据自己习惯命名,自己能看懂即可。

展园的命名啊,跟变量的命名规则基本上是一样的。我个人的倒也没有什么特别的习惯啊,但是我比较喜欢简洁一点。可是呢,你如果写一个特别复杂的大程序的时候,我建议你呢,尽量用一些复杂的 logo 啊,尤其是程序设计几千行上万行的时候,每一个 logo 呢最好就有它的具体的意思。你在往后看程序调试的时候,你就不容易出现混乱啊,比如说有些人喜欢用,嗯这个第一第二第三第四啊,就是很快就搞乱了,那你就干脆说第一一线第 2 线第 3 线啊,就是用英文来去表述它,后面呢写的久了以后仍然能够区分开。

Q8. 如何批量处理无规则命名的数据文件?

A: lianxh 无规则

Q9. return listr(sum_w) 是什么呢?为什么和样本数相等?

A: 这是 weights 值的和。 在 Stata 中,可以在数据上使用不同的权重。 默认情况下,权重为 1。 当使用这个默认值时,权重之和将等于观察值的数量。

Q10. 请问一下,处理 leverage 的时候需不需要把小于 0 大于 1 的也 drop 掉呢?

A: 可以删除,不想减少样本可以缩尾处理。

我猜啊,你无论从哪儿拿数据,这个负债率小于 0 的观察值都是很少很少啊,至少我偶尔会。单一的呢倒是有可能这个东西呢,要不要删啊还需要单独去讨论,因为你那个负债率呢是总负债除以总资产,如果我们用粗鲁的方式去理解的话,这个东西大于一相当于公司已经资不抵债了,但是资不抵债的含义呢,是说我刚性兑付的债就是到期要还本付息的这部分债如果超过我的总资产,我会出现一个资不抵债,但公司里边呢除了银行借款应付债券这些刚性兑付的,噢,刚才说错了,就是银行贷款,呃公司债券这属于刚性兑付的债啊,这个地方如果大于总资产的话,净资产啊,它就资不抵债,但是有一些是商业信用啊,就是我占这个我的客户的款叫应付账款那一部分多一点可能可以私下去协商协商,包括应付工资,这些啊都可以去协商,所以有些公司呢。蛮正常的一个事啊,你像万达呀,恒大呀,在有些时段里面它的负债率大于一,反正刚性兑付那一部分可能只占到百分之七十六十,他其实也没什么问题,有时候这个删不删无所谓了啊,我觉得是可以留下来。不过呢,我们对于负债率这种变量一般呢都会做一个缩尾处理,一般的缩完尾以后就很少再会出现大于一的啊,因为即使我刚才说恒大负债率在某个时段里面大于一是正常现象,但是呢,他也在 10 年里面也就偶尔出现那么一次两次这种状况,所以你去说完了以后呢,基本上负债率都会介于 0~1 之间的一个数啊,这也是做公司金融的这套文献里面常规的做法都会对负债率这种连续的财务比率的变量进行缩胃。

Q11. global 和 local 的使用有没有规定哪种情形用 local,哪种用 global?日常写的话怎么选择呢?

A: global 是全局暂元,在别的地方可以继续使用,而 local 是局部暂元,必须全部选中执行,停下后在别的地方可能有局限性。在简短的语句中,选在 local 可以,当然 global 也没问题。

我个人喜欢用 local,因为我经常几十行上百行的命令一起执行。相对而言,global 有一些局限,即你一旦定义好了 global,只要你不关电脑它一直都在。通常在设置路径、公共选项的时候用 global

Q12. 552 行的示例中,循环语句里的 local control "i.race", 还有 local control "i.industry" 都在一次执行里完成,不会冲突吗?比如 565 行不需要改为 local control2 "i.industry"

A: 后面的 local 定义的内容会自动替换前面的 local 定义的内容,不断更新。

Q13. 请连老师将 610 行开始的 while 语句再讲解一遍,还有 j--的使用也说一下,最好给我们举个实操的例子。谢谢。

A:

Q14. 暂元中的暂元(520 行),没能绕出来,麻烦老师再讲一遍,如何更好的理解,谢谢!

A:

Q15. 想请教下论文班需要提前预习 endnote 如何学习呢~谢谢

A:

Q16. 1)描述性统计时变量的 sd 大于 mean 时,该怎么处理数据呢?2)收入变量中有不少观测值为负或为 0,且分布不符合正态分布时,该怎么处理呢?谢谢老师

A: 如果 ST 大于 mean 的,其实这也不是什么奇怪的现象啊,因为有一些数,它本来就是很离散的对吧,但是我觉得有一个基本的判断标准,就是你要看一下前期跟你研究的这个话题密切相关的那些文章,他们里边列出来的基本统计量里边均值和标准差,是不是跟你正在做的这个数据基本上在一个数量级上啊,大家偏差不会特别大,唯一的可能就是我们研究人均 GDP20 年以前的文章里面报告的 GDP 的均值,跟我们现在报告的 GDP 的均值相比来讲要小一点,但是标准差呢,可能会之前他们做的比我们要小一点,因为我们现在收入分配的差距我觉得在拉大啊。认知的一个范围内这就没问题,相反的话如果人家算出来的平均身高就是高管的平均身高是 1 米 72,你这边算出来 1 米 82,我我我估计就有问题,你要仔细的去考虑一下,是不是你数据处理的时候有一些问题啊?

你要是说收入变量有很多观察值都是负的或者是 0,嗯,你得去仔细的考虑一下啊,你拿数据的时候它这个收入的变量是怎么界定的?是不是净收入啊?啊,如果是净收入的话就相当于说我今年收入了 30 万,但是呢,我还贷款还了 35 万,我又买辆车花了 40 万就出去了 75 万,那肯定这个收入就是负了净收入是吧?你要看清楚那假设排除这种情况啊,里面还有很多观察值是负的和 0,那你要去分别去看一下那个负的到底占了多少比例,前期相关的文章,也用相似的这种劳动力动态调查的数据,他们是不是也报告了很多为负的数,跟你这里面报告的比例是不是相当如果都存在这个问题呢?你再去问一问提供这个数据库的那个商家啊,看看他们到底是怎么解释这事儿。对于 0 那种情形呢,你要特别谨慎的去处理啊,因为它有两种可能,一种呢是那个被访问的人,他当时没有报告他自己的收入数据调查员呢,又不是很专业就没有做任何的注释,就直接把那一项呢填成 0 了,这实际上是一种错误的做法,还有一种呢是那些住户呢真的是收入党用兵的啊,就假设也没有什么低保的收入,任何收入都没有啊,然后那你就可能要用到什么 Tobit 啊什么之类的模型去处理它啊,总之吧,我觉得你得问清楚,搞清楚这个数据里边呢,收入这种变量本来应该都是大于零的数,它出现了一堆小于 0 的或者是等于 0 的数,你得搞清楚来源,不同的来源的情况下,我们要采用不同的方法去估计和处理它。

Q17. 请问 pi 代表的是什么值 会在什么模型中使用呢?

A: _pi 为圆周率,计算圆面积、体积可以直接调用。

Q18. dis price[3]dis price [3] (有空格和无空格)输出的值是不一样的 老师请问您知道这是怎么回事吗?

A:

Q19. 能介绍下 AIC,BIC,LL 吗?

A: - 专题:Stata 教程

Q20. 第三讲 1224 行,clean 是什么意思?为什么不是 clear

A:

help list

clean 是干净版本,清除边框之类;clear 是清除内存数据,不能加在 list 后面。


.     list price mpg weight in 1/5, clean

       price   mpg   weight
  1.   4,099    22    2,930
  2.   4,749    17    3,350
  3.   3,799    22    2,640
  4.   4,816    20    3,250
  5.   7,827    15    4,080

.     list price mpg weight in 1/5

     +----------------------+
     | price   mpg   weight |
     |----------------------|
  1. | 4,099    22    2,930 |
  2. | 4,749    17    3,350 |
  3. | 3,799    22    2,640 |
  4. | 4,816    20    3,250 |
  5. | 7,827    15    4,080 |
     +----------------------+

Q21. 截尾的时候会存在变量截尾的先后顺序问题吗,例如假设目前 10000 个观测值,x1 和 x2 两个变量都要双侧 1%截尾,那么它是先删除 x1 的 200 个观测值(还剩 9800 个),然后再删除 x2 的 196 个观测值吗?还是说是同时在 10000 的基础上各逻辑上删除 200 个样本,然后真正删掉并集数据?

A:

Flannery, M. J., K. P. Rangan, 2006, Partial adjustment toward target capital structures, Journal of Financial Economics, 79 (3): 469-506. -PDF-

这篇文章采用截尾的方式处理了离群值,但是文中没有说谁放到前面谁放到后面。我觉得有一个原因是文中的样本数特别大,有 10 万多笔观察值,根本不必关心截尾的顺序问题。我建议,把你初步判断离群值最严重的变量放到前面处理。

另外呢,我们在至少公司金融公司财务这方面的文献里边很少用到截尾处理,多数文献都用缩尾缩,此时就不存在你刚才说的谁先谁后的这个顺序的问题了。所以你要想一想,你是不是必须得用截尾处理?

Q22. 在多元回归中,一般是先 winsor 后 drop 回归变量缺失值,还是反过来?

A: 我是先把这个缺失值都删掉,在这个基础上再去缩尾。我删缺失值的方式如下:

sysuse "auto.dta", clear
reg price wei i.rep78
keep if e(sample)
winsor2 ....

*-table1

*-table 2

Q23. 为什么引用全局暂元有时候要添加双引号(如 do 文件中 539 行),有时候不用(如 543 行)?开始以为是因为全局暂元中存放的是字符串,所以引用时要加双引号,但发现好像也不是这样(如 558 行),局部暂元也有类似问题,到底是什么原因呢?

A: display 在屏幕显示时,只要是字符串都有引号,其他回归不需要,直接引用。

Q24. 做社科研究的问卷调研数据,比如可靠性检验,聚合度区别效度检验等小样本数据是否也能用 stata 处理,具体流程如何做?

A: 我没有做过问卷调查,我一般的这个问卷的数据也是拿来以后我们跟着处理,所以你提到的这个可靠性检验啊,聚合度,区别效度检验,我都不太了解,但是也不影响吧,因为斯塔本身也提供了很多做 survey 的命令,你可以在里边用 findit 那个命令呢去搜关键词,看能不能搜到这相关的一些

Q25. 843 行显示奇偶数的 mod 能再解释一下吗?感觉少了一小部分,if mod 不用等于什么吗?

A:

Q26. 726 行怎么理解?895 行 args 就只是接收信号的作用吗?

相关课程

连享会-直播课 上线了!
http://lianxh.duanshu.com

免费公开课:


课程一览

支持回看

专题 嘉宾 直播/回看视频
最新专题 因果推断, 空间计量,寒暑假班等
数据清洗系列 游万海 直播, 88 元,已上线
研究设计 连玉君 我的特斯拉-实证研究设计-幻灯片-
面板模型 连玉君 动态面板模型-幻灯片-
面板模型 连玉君 直击面板数据模型 [免费公开课,2 小时]

Note: 部分课程的资料,PPT 等可以前往 连享会-直播课 主页查看,下载。


关于我们

  • Stata 连享会 由中山大学连玉君老师团队创办,定期分享实证分析经验。直播间 有很多视频课程,可以随时观看。
  • 连享会-主页知乎专栏,400+ 推文,实证分析不再抓狂。

New! lianxh 命令发布了:
随时搜索连享会推文、Stata 资源,安装命令如下:
. ssc install lianxh
使用详情参见帮助文件 (有惊喜):
. help lianxh