楼主: innerper
4245 3

请问SAS中如何根据字符型变量,生成一个数字型变量,而字符变成标签?谢谢! [推广有奖]

  • 5关注
  • 1粉丝

已卖:979份资源

博士生

70%

还不是VIP/贵宾

-

威望
0
论坛币
954 个
通用积分
186.5857
学术水平
14 点
热心指数
20 点
信用等级
8 点
经验
8697 点
帖子
98
精华
0
在线时间
541 小时
注册时间
2015-3-6
最后登录
2022-2-22

楼主
innerper 发表于 2016-1-8 11:22:22 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
请问SAS中如何根据字符型变量,生成一个数字型变量,而字符变成标签?谢谢!比如,1000行 name中有100个学校的名字,我想生成一个name1,是数字型,比如1,2,3,……100.每一个数字有不同的学校,也就是说标签。1代表人大,2 代表南开。。。。等等类似?STATA中用encode就可以直接这样。请问SAS中如何做?谢谢!
二维码

扫码加我 拉你入群

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

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

关键词:字符型变量 字符型 encode Stata name 标签 如何

沙发
sas9.4 发表于 2016-1-10 01:44:23
proc format
已有 1 人评分论坛币 收起 理由
admin_kefu + 5 热心帮助其他会员

总评分: 论坛币 + 5   查看全部评分

藤椅
风晚凉 发表于 2016-1-23 14:20:38
大概了解你的意思,但标签是对variable所言的。你的意思应该是另设一列(name1),然后对应的学校分别赋值1-100是么。但是1000个观测的学校名是有重复的(只有100个学校)。我假设你数据集名字是aa
proc sort data=aa nodupkey out=bb;
by name;
run;/*得到100个不重复学校名*/

data bb (keep=name1 name);
  set bb;
  if _n_=1 then name1=0;
  name1+1;
run;/*每个学校赋值 1-100*/

proc sort data=aa;
  by name;
proc sort data=bb;
  by name;
data final;
  merge aa bb;
  by name;
run;

已有 1 人评分论坛币 收起 理由
admin_kefu + 20 热心帮助其他会员

总评分: 论坛币 + 20   查看全部评分

板凳
innerper 发表于 2016-1-24 14:10:10
风晚凉 发表于 2016-1-23 14:20
大概了解你的意思,但标签是对variable所言的。你的意思应该是另设一列(name1),然后对应的学校分别赋值1 ...
many thanks ~!!!

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-9 03:16