楼主: flying--smile
43433 44

[数据管理求助] 批量winsorize多个变量 [推广有奖]

21
wangying1778 在职认证  发表于 2012-2-7 22:04:19

22
shenruiyang211 发表于 2012-2-19 14:12:49
真是好贴!

23
ruclaolan 发表于 2012-4-27 21:54:50
受教了,谢谢各位大侠
laolan

24
smile_nana 发表于 2012-4-29 18:13:47
很有用 谢谢

25
无尘第二 发表于 2012-6-1 23:49:41
zkfu41 发表于 2011-8-20 23:08
到http://personal.anderson.ucla.edu/judson.caskey/data.html上找到winsorizeJ,点击右键,另存为到你的a ...
我的版本是stata11.0,下载了winsorizeJ.ado,但是没找到ado\persona\目录,奇怪。ado下面只有base和updates两个文件夹

26
zkfu41 发表于 2012-6-2 15:41:35
你可以在stata命令窗口中输入 sysdir 看到personal所在目录。

27
shengyn 发表于 2012-10-13 10:36:50
感谢!

28
幽蓝弋 发表于 2012-12-6 11:42:59
voodoo 发表于 2011-4-8 21:16
这么隐秘的命令你都能找出来,实在是高!

只可惜没有help文档,只好viewsource winsorizeJ.ado了。
不好意思,我是个菜鸟,请问如何下载winsorizeJ.ado,如何安装啊?谢谢

29
hiderm 发表于 2013-2-19 18:12:35
arlionn 发表于 2011-4-10 10:26
2011-05-06 修改:将 vv(两个v) 修改为 xx。

较为原始的方法:
以下内容为根据 help macro 和 help foreach 的帮助文件, 对连老师给出的方法加以注释(// 后面蓝色字体的内容), 便于自己和其他坛友学习领会. 如果有解释的不对地方, 还请各位坛友指正.

对多个变量进行winsor处理
===========================================================================
较为原始的方法:

*-主要变量 winsor 处理                         // 对接下来要完成的任务加以说明和解释
local xx "acc sale Lsale Dsale LDsale cfo Dinv prod disexp PPE DAR"   // 定义局部宏 `xx' 为 前后双引号""所引用的字符
   foreach v of varlist `xx'{                    // 循环开始, 设定循环条件: 定义局部宏 `v' 为分项清单(此处为变量列表 varlist)
                                                                 
的每一项
     local a: var lab `v'                            // 利用拓展的宏函数(variable label varname)定义局部宏 `a' 为 `v' 所指的变量的
                                                                标签内容

         winsor `v', p(0.01) gen(`v'_x)    // 对 `v' 进行缩尾处理, 缩尾率为1%, 并生成新变量, 新变量名的格式为
                                                                `v'名+后缀_x

         drop `v'                                      // 删除局部宏 `v'
         rename `v'_x `v'                        // 将新生成的变量 `v'_x 重新命名为 `v'   (`v' 已删除, 不会出现`v' 已存在的报错)
         label var `v' "`a'"                        // 给已经重新命名的新生变量 `v' 添加标签为 局部宏 `a' 中的内容
   }
                                                       // foreach循环结束

===========================================================================

已有 1 人评分学术水平 热心指数 信用等级 收起 理由
日复一日12 + 1 + 1 + 1 精彩帖子

总评分: 学术水平 + 1  热心指数 + 1  信用等级 + 1   查看全部评分

[b][color=Red]提请应助者注意:请不要上传draft或者wp版本,谢谢!因为这些版本我自己用谷歌搜索就可以搜到并免费下载

30
fanyaojun888 发表于 2013-2-20 13:58:23
可以的。安装组件。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-1 14:49