stata做回归前的数据处理学习笔记
前言
在确定回归之前需要对数据结构进行查看、简单画图查看关系、对数据清理、对离群值进行处理等工作,本次就记录学习此过程中需要使用的命令以及作用。
1.浏览资料
1.1 查看资料结构
des, detail //查看有哪些变量、变量类型、格式和标签(实际中意义不大)
ds
ds, detail //作用同上,但在编程中经常使用,与以下命令一起在编程中使用
ret list //return list
dis "`r(varlist)'" // 编程时,可以利用此返回值
browse `r(varlist)' //另外browse可以代替edit,因为browse只是查看,不会编辑,edit是查看并编辑
list //在屏幕中列示(数据量少的时候,简单查看一下可以,或者复制一些变量的时候可以)
list edu_background in 1/5,sepby( a2019_prov_code) //以省份作为分类并画横线,列示前5行的教育背景
list edu_background age,noobs //列示前面的序号取消
list edu_background age,noabs clear //不仅前面的序号取消,分列的横线也取消
sort //排序
label define repair 1 "好" 2 "较好" 3 "中" 4 "较差" 5 "差" //调查问卷资料时先定义一个变量,分不同的级别表示
label values rep78 repair //再对应于某个类别变量,这样类别变量中的12345就变成文字了,但本质上还是数字,显示方便
1.2 基本统计量
sum ,detail //描述性统计,detail 把具体分位数表示出来
codebook price weight //同上,但是这个可以看缺失值
inspect a2019_prov_code //可以画一个简便的直方图看分布
tabulate a2016b_prov //可以展示a2016b_prov 变量的名称、频次、百分比和累计百分比,可以简写为tab
tabstat price weight length, s(mean sd p25 med p75 min max) c(s) f(%6.2f) by(foreign) //可以分类进行描述性统计,s()中是将要描述性统计显示的列名,c(s)是行列转置,f()是统一格式,by()是按照什么分类展示
1.3 基本图形
histogram wage //画直方图
histogram hours,frequency // 纵坐标为对应的样本数
histogram ttl_exp, normal // 附加正态分布图
histogram grade, discrete // 离散变量的直方图必须附加 discrete 选项
kdensity a2019_prov_code //画核密度图
kdensity a2019_prov_code,normal //附加正态分布图
twoway scatter return acrosspro //画散点图
graph matrix return acrosspro pension //画相关系数矩阵
2.1 更多变量技巧
## 2.1.1 更多变量技巧——_n和 _N
* 在stata中 _n是指的一个简单编号顺序,_N指的是总的样本量,可以妙用_n和_N去实现一些用途
* 可以先排序,然后把排序的序次,定义一个变量
sort gdp
gen order_1=_n //表示gdp这个变量的排序次序
dis _N //显示的为总体样本的个数
*存储最大值
gen income_max=income[_N]
*计算差分
gen diff_income=income[_n]-income[_n-1] //除此之外还有分别计算与最小值最大值的差等等,如果是面板数据可以使用D.(计算差分)F.(前滞一期)L.(后滞一期),但是如果是混合截面数据,不是面板想要差分,可以使用_n和_N的妙用,一个变量[]代表这个变量的显示的第几个值,比如income[3]表示收入被显示的第三个值。
## 2.1.1 更多变量技巧——虚拟变量
tab race, gen(dum_r) //有几个类别,就可以批量生成几个虚拟变量