楼主: xx3050
26927 17

[数据管理求助] 急问!请教stata中如何将数值变量变成分类变量 [推广有奖]

  • 1关注
  • 1粉丝

已卖:46份资源

讲师

37%

还不是VIP/贵宾

-

威望
0
论坛币
1525 个
通用积分
24.9880
学术水平
5 点
热心指数
5 点
信用等级
3 点
经验
30870 点
帖子
278
精华
0
在线时间
680 小时
注册时间
2008-11-17
最后登录
2020-8-10

楼主
xx3050 发表于 2011-6-18 21:19:31 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
有收入的数值,当然有缺失值,我想把收入划分三个类——低中高。前25%为1,后25%为3,中间50%为2请问如何在stata中实现
详细命令是什么
谢谢了

PS: 这个看help是什么命令
二维码

扫码加我 拉你入群

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

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

关键词:Stata tata 数值变量 分类变量 Help 如何

沙发
sungmoo 发表于 2011-6-19 06:15:25
xx3050 发表于 2011-6-18 21:19 有收入的数值,当然有缺失值,我想把收入划分三个类——低中高。前25%为1,后25%为3,中间50%为2请问如何在stata中实现
缺失值划入哪类?单独算一类?

藤椅
xx3050 发表于 2011-6-19 09:05:22
2# sungmoo
我也在考虑缺失值  缺失值不管  有数值的才分类  缺失值可以为0或者什么的

板凳
sungmoo 发表于 2011-6-19 10:03:56
xx3050 发表于 2011-6-19 09:05 缺失值不管  有数值的才分类
cumul x if x<., gen(p) eq
replace p=(p<.25)+(p>=.25&p<=.75)*2+(p>.75)*3 if x<.
已有 1 人评分学术水平 热心指数 信用等级 收起 理由
Lilrshs + 1 + 1 + 1 精彩帖子

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

报纸
h3327156 发表于 2011-6-19 10:27:19
呵! sungmoo弄的不错!
另外一个给您参考
假设income是您的收入变数

su income if inocme!=.,d
gen newincome=((income<r(p25))|(income>r(p25) & income<r(p75))|(income>=r(p75)))+(income>r(p25) & income<r(p75)|(income>=r(p75)))+(inome>=r(p75)) if income!=.

如果觉得第二步太长
可以考虑像sungmoo一样的作法
gen newincome=(income<r(p25))+(income>=r(p25) & income<r(p75))*2+(income>=r(p75))*3

另外,大于究竟是不是大于等于,请在逻辑符号微调

先前我自己并没有好好检查,有弄错,请勿见怪!

地板
xx3050 发表于 2011-6-19 10:44:02
感谢两位 可是由于我是初学者 缩写命令有点看不太懂  
比如 cumul  eq

su   是什么    d是什么
logic符号是什么意思呢?

7
ywh19860616 发表于 2011-6-19 10:52:23
cumul:cumulative
su:summary
一份耕耘,一份收获。

8
sungmoo 发表于 2011-6-19 11:50:54
h3327156 发表于 2011-6-19 10:27 假设income是您的收入变数
su income,d if inocme!=.
gen newincome=(income<r(p25))+(income<r(p75))+(income>=r(p75)) if inome!=.
*上面两行各有几处错误。可用:

su income if income!=., d
g newincome=1+(income>=r(p25)&income<=r(p75))+(income>r(p75))*2 if income!=.

9
xx3050 发表于 2011-6-19 11:55:43
4# sungmoo
谢谢版主  用你的做出来了  虽然不理解第一行的命令的具体意思  觉得很神奇。。。

10
sungmoo 发表于 2011-6-19 11:59:43
xx3050 发表于 2011-6-19 11:55 虽然不理解第一行的命令的具体意思
第一行相当于给出了x的样本分布函数的函数值。

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-30 02:16