文章目录
- 描述性统计
- 回归命令
- 结果保存
描述性统计
描述性统计的命令我一般使用summerize,用法为summerize加上你所想要总结的变量名称,如果summerize后什么都不加,则表示描述所有变量。
sysuse auto
* 表示描述性统计所有变量 *
summarize
* 表示描述统计mpg,weight两个变量 *
summarize mpg weight
论文中数据部分一般要报告描述性统计和数据说明。描述性统计一报告均值、标准差、最大值、最小值,而数据说明则报告数据指标说明(可省略),单位及数据来源。有些论文会把两个部分合在一起报告,也有的论文直接在正文里报告数据来源,只放描述性统计的表。这个没有统一标准。(表来源在最后)
描述性统计的主要作用为确认数据是否准确,有无出现极端异常值,主要通过观察:
1. 数据的最大最小值。 通过数据的最大最小值,结合数据本身的一些特性,我们可以初步判断数据是否有问题,比如AQI设定的最大值为500,而且空气污染值一般不会出现0,如果数据中出现AQI超过500,或者等于0,就说明数据有问题。顺带提一句,因为AQI可能出现500“爆表”后浓度与数据不再成正比上升的现象,所以空气污染衡量一般辅以其他的几个指标共同观察。
2. 均值和标准差。 如果标准差>>均值,则数据中可能已经出现极端值和异常值,这时就要对数据进行其他的一些处理。具体可以参考经管之家上的数据预处理。
回归命令
回归我一般使用reg命令,关于随机效应、固定效益、DID、RD之类的貌似有已经专门的命令,不过我还是习惯自己用reg这个最原始的命令写:
* 基本命令 *
reg y x1 x2 x3
* 可以与if连用 *
reg y x1 x2 x3 if x3=0
另外reg后加","可以加上option选项,常用的有robust和vce(cluster variable)。
robust 表示考虑了异方差后对标准误进行调整,一般适用于大样本。从目前我的经验来看,这个用用对回归显著性不会有太大影响。
vce(cluster )是聚类标准误,如果某个变量在一个层级上高度相关时,就要用聚类标准误,具体参考这个讨论。聚类标准误会让回归更不容易显著(真的把我结果一下拉低了几个档次!),如果是投期刊一般会被审稿人要求使用,但如果大家是水论文,也就不一定要虐待自己了。
使用方法:
reg y x1 x2 x3,r
reg y x1 x2 x3, vce(cluster var)
结果保存
把回归结果导入到word,我用的asdoc命令,好处是导出结果美观,使用也简单,坏处是,这个命令比较小众,像outreg2的结果好像就可以直接导进latex(我没试过),但如果你的论文全程word操作,也就影响不大。使用方法:
* 第一次使用前要下载 stata命令栏中直接输入*
ssc install asdoc
* 具体命令 *
asdoc 你的命令, 相关选项
* 举个例子 *
asdoc reg y x1 x2 x3, vce(cluster var) replace/append drop(x1 x2) cnames(regression1) dec(2) save(filename)
我们把选项具体来说明一下:
1.replace/append,使用replace意思是替换原有文件(如果原来没有就新建一个);append是在原有文件里继续加回归结果,但append不能在同一个word里加太多,加太多会出现Bug,所以建议大家还是多用replace, 多创建几个文件。
2. drop(),意思是导出结果中不导出这几个变量的回归结果,像我经常会加城市或者时间固定效应的哑变量,这些哑变量的回归系数不重要,通常就会用drop(i.citycode i.date)把这些哑变量的结果省略掉。
3. cnames()是在导出结果后,你的给这一列命的名字,会出现在回归列的上方。
4. dec()是保留几位小数,这里保留两位。
5. save()是你保存这个word回归文件所使用的名字,像这里把这个回归的word命名为filename。
回归结果用asdoc导出后就长这样:
这个命令不仅可以用来导出回归,描述性统计的结果也可以这样导出,就用类似asdoc summarize var_list,dec(2)的命令,大家可以自己探索。
References
曹静, 王鑫, 钟笑寒. 限行政策是否改善了北京市的空气质量?[J]. 经济学 (季刊), 2014, 13(3): 1091-1126.
陈诗一,陈登科.雾霾污染、政府治理与经济高质量发展[J].经济研究,2018,(2):20-34.
https://bbs.pinggu.org/thread-3651449-1-1.html