缩尾处理 stata

要求:对连续变量上下1%的分位数进行了缩尾处理

目录


安装

ssc install winsor2

结果发现自己卡在了第一步,安装不了,显示如下:

ssc install winsor2
remote connection failed
http://fmwww.bc.edu/repec/bocode/w/ either
  1)  is not a valid URL, or
  2)  could not be contacted, or
  3)  is not a Stata download site (has no stata.toc file).

看网上说是因为和官网连接不上,我就手动打开了Stata | Updates: Keeping Stata up to date

又重新输入了一遍命令,成功。

ssc install winsor2
checking winsor2 consistency and verifying not already installed...
installing into D:\stata\plus\...
installation complete.

具体命令

参考网址:winsor2缩尾处理stata

引用如下,侵权删

Winsor2 varlist [if] [in], [suffix(string) replace trim cuts(# #) by(groupvar) label ]

 

// suffix(string): 对缩尾后的变量名加后缀,否则默认为_w / _tr;

// trim: 修剪处理,将高于或低于指定分位数的离群值设定为缺失值;

// cuts: 选择分位数,否则默认为1%双侧缩尾处理;

// by: 分组;

// label: 设定标签;

// 您可以根据个人需要选择是否添加后缀条件,如无需要,直接按示例简单使用winsor2即可

Winsor2 x1 x2

// 不加option,生成_w缩尾后变量;这是最简洁的一条winsor2命令,默认1%上下水平的缩尾处理,可以同时保留x1 x2原始值和x1_w x2_w缩尾值。

 

Winsor2 x1 x2, cuts(1 99) replace

// 进行上下1%缩尾处理,覆盖原始值;在上一条命令中加入指定分位数和replace,此时的x1 x2是缩尾之后的取值,覆盖了原始值,即用99分位数替代高于99分位数的异常值,用1分位数替代低于1分位数的异常值。

 

Winsor2 x1 x2, cuts(0 99) replace

// 仅对99%分位数以上缩尾处理,将异常值用指定分位数取值替代,覆盖原始值。此处和上述命令的不同点在于分位数的设置不同,cuts(a b)中的a b可以自定义设置,既可以单侧分位数缩尾,又可以双侧分位数缩尾,若换成上下5%分位数缩尾处理,只需写成cuts(5 95)即可,以此类推。

 

Winsor2 x1 x2, replace cuts(1 99) trim

// 进行上下1%修剪处理;此处trim和上述命令中的replace的不同在于,replace直接覆盖原始值,将异常值用指定分位数的取值替代,trim将指定分位数之外的异常值剔除,形成缺失值,样本量大的情况下更加适用trim命令,在使用trim命令后,缩尾后的变量存在缺失值,继续将缺失值剔除即可。

drop if x1==.|x2==.

// 剔除x1 x2中的缺失值。

疑问1:需要对所有变量缩尾吗?

看网上回答

需要对所有连续变量进行缩尾。因为你无法解释为什么只对某些变量缩尾而不对其他变量缩尾。更核心的问题是缩尾后的回归是相对更稳健的,比如说某个变量如果对因变量确实有影响,那么缩尾后也一定是有影响,否则就是模型有问题,或者根本没影响

疑问2:面板数据每年的截面数据分别进行处理吗,还是这么多年都混在一起处理

这个问题暂时不太清楚,先混在一起处理,康康结果咋样。

大部分文献都是混在一起处理

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
扎眼的阳光的头像扎眼的阳光普通用户
上一篇 2023年5月7日
下一篇 2023年5月7日

相关推荐