STATA 常用命令
一、基本运算
1.运算符号
等于
==
&
+
-
*
/
不等于
~=
~
|
乘方
^
2.新变量
产生1至n(行数)的变量:gen z=_n
新变量赋值:gen y=log(x) if x>0
            gen y=seq(x)
            gen y=rmean(x)
            gen y=x+z 
Dummy 变量:gen d=1 if x>1
            replace d=0 if x<=1
自动生成年度(year)的Dummy变量:tabulate year, gen(Dyear)
替换变量中的数值: replace x=0 if x<0
更换变量名称: rename var1 x
字符型变量转换为数值型: destring x, replace force
(手动操作:选定变量=>右键=>数据)
提取年度: gen ymd=date(date,”YMD”)
          format %td ymd
          gen year=year(ymd)
提取字符: gen code=substr(x,1,1)
3.变量处理
一阶滞后变量: gen lag_x=L.x
将所有变量的缺失值改为0:mvencode _all, mv(0)  override
去掉重复数值: duplicates drop x, force
变量的标准化:egen x1=std(x)
变量的缩尾处理:先安装:ssc install winsor, replace
                                  winsor x , gen (x1) p(0.01)
二、数据处理
1.基本操作
帮助:help ttest
search ttest
打开文件: use “  “
查看:list x in 1/4
展示数据集: describe (d)
频率:tab x    或  tab x y z
命令窗口的执行命令:enter
命令文件的执行命令:ctrl +D
命令窗口换行:ctrl+enter
清空内存(对新数据集开始检验时先清除原数据):clear 
点击历史窗口,可以将已执行的命令重新恢复为待执行的命令
从小到大排列:sort  x
从大到小排列:gsort  -x
删除变量:drop x
删除若干行:drop in 10/12
删除前3行:drop in 1/3
删除负数行:drop if x<0
删除缺失值:drop if x==.
删除不等于C的值:drop if x~=“C”
保留变量x和 y,删除其他变量: keep x y
保留若干行,删除其他行:keep in 10/12
保存: save “ 路径” , replace
2.数据集合并
横向合并: merge x y using “  “
纵向合并:append using “  “
按一个变量合并:merge 1:m code  using "E:\Research\STATA\income.dta"
drop _merge
按两个变量合并:merge 1:1 code year using "E:\Research\STATA\income.dta"
drop _merge
3.
三、数据导入导出
1. Data=>data editor (改为数值型)=>将excel数据粘贴到data editor
2. 直接导入excel数据,并把第一行作为变量名称:
import excel “路径”, firstrow clear
3. 导入stata 数据集:use “  ”
4. 导出: 安装asdoc: ssc intall asdoc, replace
        然后回归分析时:asdoc reg y x
        在结果窗口点击:Myfile.doc
四、描述性统计
1. summarize x
2. su x
3. su x if x>20
4. su 后不输入具体变量,则对全体变量进行描述性统计。
5. 更多指标的描述行统计:su x , detail
6. 分组进行描述性统计bys year: egen ave=mean(x)
  均值直接作为数据集的一列。
7.  按变量code对x进行分组统计均值:tabstat x,by(code) s(n mean)
五、相关系数
1.两个变量x和y的pearson相关系数:pwcorr x y, sig
2.两个变量x和y的spearman相关系数:pwcorr x y, sig
3.多个变量时则增加需要检验的变量。
六、t检验
1. 分组t检验:ttest x, by (group var)
2. 配对t检验:Ttest a=b
或:gen newvalue=a-b
    Ttest newvalue=0
七、非参数检验 Wilcoxon
ranksum rinv1, by (group var)
八、多元线性回归excel口内打 或者x
1. regress y x(或reg y x)
2. 共线性检验:regress y x vif
3. 异方差性检验:regress y x vif estat hettest
(p<0.05,表示存在异方差性)
4. reg y x if x<100
5. reg lny x (可对变量的对数直接加入到模型中进行回归)
九、面板数据多元回归
1. 识别面包数据:tsset code year
2. 固定效应检验:xtreg y x1 x2,fe
3. 随机效应检验:xtreg y x1 x2, re
4. Hausman检验:
  qui xtreg y x1 x2,fe
est store fe
  qui xtreg y x1 x2,re
est store re
  hausman fe
说明:统计量为:chi2(6)=...
      原假设:随机效应模型成立
      若P>0.05(prob>chi2),则原假设成立,否则,固定效应模型成立。
十、Logit回归
logit y x
结果说明:
LR:似然比检验,用于检验所有变量的联合显著性,判断模型的整体拟合程度。
Pseudo-R2:拟合程度,与一般多元回归的R2类似。
十一、主成分分析与因子分析
1. 主成分分析
先将变量标准化:egen x11 = std(x1) egen x21 = std(x2)……
进行主成分分析:pca x11 x21 ……, mineigen(1)
主成分载荷分析:estat loading, cnorm(eigen)
主成分向量=载荷/特征值的开方
是否适合做主成分分析:estat kmo(0.9以上非常适合,0.8适合,0.7表示一般,0.6表示不太适合,0.5一下表示极不适合)
碎石图:screeplot
主成分选择:一般选择前几个方差解释累计超过80%的因子主成分的因子。
2. 因子分析与主成分分析只取特征值大于1的因子或主成分。
3. 因子分析
  factor x1 x2 x3 ...x20, pcf
  estat loading , cnorm(eigen)
  Screeplot 可以帮助选取因子。
  Rotate  旋转后,可以得到:rotated factor loadings(pattern matrix) and unique variance.
4.
十二、PSM(倾向性匹配)
1. 安装:ssc install psmatch2
(help psmatch2, 出现帮助文件即说明安装成功)
2. Set seed 0001 gen ru=runiform(14000) sort ru
Psmatch2 treat , out(y)    (y为因变量;treat:处理组为1,对照组为0)
  Logit neighbor(1) common
  Caliper(0.05) ties
  Ps test, both                    (均衡性检验)
  Ps graph                      (图示匹配结果)
3. 匹配结果说明:
  _weight==1: 一对一匹配
  Keep if _weight==1
  Ties: 并列个体

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。