赞
踩
目录
美国各汽车品牌制造特征向量 autornd.dta
分性别、年龄血压样本 bplong.dta
前后两次测血压差 bpwide.dta
癌症影响因素 cancer.dta
普查数据 census.dta
城市温度气候数据 citytemp.dta
99年教育与gdp数据 educ99gdp.dta
96年GNP数据 gnp96.dta
寿命预期数据 lifeexp.dta
美国年轻女子职业与工资数据88年数据 nlsw88.dta
美国各种族性别数据2000年 pop2000.dta
美国标普500指数 sp500.dta
美国寿命预期数据 uslifeexp.dta
美国寿命预期数据2 uslifeexp2.dta
选举数据 voter.dta
汽车指标数据 auto.dta
美国工作与收入数据 nlswork.dta
- # 引用数据
- sysuse nlsw88.dta
describe # 简写des
- rename 原始标签名称 新标签名称
- # 例如rename Stkcd id
summarize #简写sum
- use http://www.stata-press.com/data/r15/nlswork.dta
- xtset idcode year, yearly
基于4步骤定义面板数据后进行统计
xtsum
使用上面数据分年龄统计收入水平
方式一
- sort age
- by age : sum ln_wage
方式二
tabstat ln_wage ,by(age) stat(mean sd min max)
例如将下列年龄进行划分
xtile age_rank =age , nquantile(5) # 根据分位数划分5个等级
看看效果
tabstat age,by(age_rank) stat(mean sd min max)
cumul age ,gen(k) # 新增变量k就是age的分位数
例如:股票代码600519.SH
- replace id=substr(id,1,6) # 其中id是证券代码
-
- # 若需要字符串转数字需要下面命令
- destring id, replace
通常情况一些离散变量是字符串类型的,模型计算需要转换成数值类型的,例如:北京,对应数字1
转换代码
encode province, gen (province_class) #其中province_class是新的编码变量
查看编码对应的字符串用下面代码
label list province_class
那么已经编码的变量如何转换(映射)回字符串
decode province_class , generate(province_str)
使用egen命令生成,详细help egen
egen xbar = mean(x) # 新增xbar字段,值是x变量的均值
条件删除样本
drop if (IND == "J66")|(IND == "J67") # 删除IND字段值是 "J66" 或 "J67"
删除变量
drop id # 删除id变量
需要安装dropmiss命令
示例
dropmiss a b c ,obs any
处理后的数据
winsor2 GRO , replace cuts(1 99) # 处理GRO变量,保留1-99百分比变量值
中介效应有很多模型,具体可参考:
https://stats.idre.ucla.edu/stata/faq/how-can-i-do-moderated-mediation-in-stata/
对于model1 示例如下
- m = a0 + a1x
- y = b0 + b1m + b2x + b3mx
- conditional indirect effect = a1(b1 + b3x)
- Normal theory estimation using the delta method for model 1.
- quietly summarize x
- global m=r(mean)
- global s=r(sd)
- generate mx=m*x /* mv by iv interaction */
- sem (m <- x)(y <- m x mx)
stack命令
例如面板数据知道当前期一个人的收入水平,想得到前1期收入水平做对比。
- use http://www.stata-press.com/data/r15/nlswork.dta # 使用示例数据
- xtile wage_rank = ln_wage , nquantile(5) # 将收入自动划分等级
- xtset idcode year # 定义面板
- gen pro_wage_rank = L.wage_rank #定义pro_wage_rank是前1一期收入等级
-
- # 前n期 用Ln.xxx表示,前1期1可以省略
根据上个示例想得到每年总样本的收入水平变化情况,可能需要一个概率矩阵。下面代码只生成70年概率转移矩阵
- qui estpost tab pro_wage_rank wage_rank if year == 70
- esttab ., cell(rowpct(fmt(2)) count(fmt(g) par keep(Total))) collabels(none) unstack noobs nonumber nomtitle eqlabels(, lhs(`year_item'转移矩阵)) varlabels(, blist(Total "{hline @width}{break}"))
概率转移矩阵一大特点对角线值最大,即大概率情况下状态是保持不变的。
使用ttesti命令,我常用 ttesti #obs1 #mean1 #sd1 #obs2 #mean2 #sd2
ttesti 32080 0.567751246882793 0.3032139549246353 32080 0.5659769326683292 0.30021235122326406
H0假设是均值相等,但是检测结果是Ha:diff<0 的概率最大。
21.固定效应
22.双重差分
21.倾向性匹配
22.断点回归
23.logit
24.OLS
。。。。。。。。待完成
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。