楼主: lemonxinran
6544 9

[编程问题求助] 求助:stata分年度winsorize变量 [推广有奖]

  • 0关注
  • 1粉丝

已卖:2份资源

讲师

30%

还不是VIP/贵宾

-

威望
0
论坛币
1155 个
通用积分
6.0000
学术水平
1 点
热心指数
1 点
信用等级
1 点
经验
10334 点
帖子
188
精华
0
在线时间
605 小时
注册时间
2010-10-25
最后登录
2025-4-2

楼主
lemonxinran 发表于 2013-2-5 22:40:33 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
求助:我需要对变量a进行分年度winsorize,year取值为2000到2011,a是数值型,year是字符型变量,
使用命令:gen a_win=.

forval i=2000/2011{
winsor a if year==`i', gen(a_`i') P(0.01)
replace a_win=a_`i' if year==`i'
}

为什么总是提示type mismatch呀?

请教哪里错了?谢谢!

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Winsorize winsor Stata tata wins

沙发
张二林 发表于 2013-2-5 23:07:01

藤椅
xingxf 发表于 2013-2-6 00:15:07
gen a_win=.
forv i=2000/2011 {
winsor a if year==`i', gen(a_win`i') p(0.01)
replace a_win=a_win`i' if year==`i'
drop a_win`i'
}
其实能不用循环最好不用,因为循环执行效率低,但是wisnor不能和by使用,所以只能循环了。
代码就是这样,好奇的是楼主为什么要分年度winsor?你这么做最好有依据,我没见过有论文分年度winsor的。

板凳
sungmoo 发表于 2013-2-6 01:08:51
year是字符型变量
if year=="`i'"

************
bys year: cumul a, eq g(p)

报纸
lemonxinran 发表于 2013-2-6 14:00:58
xingxf 发表于 2013-2-6 00:15
gen a_win=.
forv i=2000/2011 {
winsor a if year==`i', gen(a_win`i') p(0.01)
谢谢。我这样winsor是有根据的,这个样本有一万,根据相似的论文,是需要分年度winsor的。

地板
pingguzh 发表于 2013-2-6 14:17:58
来学习了
统计爱好

7
lclray3 发表于 2013-7-12 16:26:42
学习了,感谢楼主的提问。

8
arlionn 在职认证  发表于 2013-12-28 21:30:50

9
yypyypyyp 发表于 2014-11-17 17:27:02

10
yuxinyang88 学生认证  发表于 2018-4-19 14:18:06
  按help winsor2 也许可以找到按行业进行缩尾的办法
  
   winsor2 a, replace by(year)

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

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