请选择 进入手机版 | 继续访问电脑版
楼主: 小鳄鱼a
904 4

求助如何把观测设为其他观测 [推广有奖]

  • 6关注
  • 10粉丝

学科带头人

3%

还不是VIP/贵宾

-

威望
0
论坛币
125 个
通用积分
0.0040
学术水平
40 点
热心指数
45 点
信用等级
43 点
经验
32801 点
帖子
1185
精华
0
在线时间
1539 小时
注册时间
2009-7-16
最后登录
2018-10-5

小鳄鱼a 发表于 2014-10-28 10:17:42 |显示全部楼层 |坛友微信交流群
30论坛币
x
a

6

3

b

6

8

c

8

2



原来的数据这样  
想变成这样


xy
aa

6

a

3

a
bb

6

b

8

b
cc

8

c

2

c

最佳答案

sniperhgy 查看完整内容

楼主你好,根据你的要求,是不是只要不是数字值的就代表分组?那么试试如下代码:
关键词:ABB BCC C2C 如何
sniperhgy 发表于 2014-10-28 10:17:43 |显示全部楼层 |坛友微信交流群
楼主你好,根据你的要求,是不是只要不是数字值的就代表分组?那么试试如下代码:
  1. data temp;
  2.   input x $1.;
  3.   cards;
  4. a
  5. 6
  6. 3
  7. b
  8. 6
  9. 8
  10. c
  11. 8
  12. 2
  13. ;
  14. run;

  15. data temp2;
  16.   retain x y;
  17.   set temp;
  18.   if missing(input(x, best32.)) then
  19.     y = x;
  20. run;
复制代码
已有 1 人评分论坛币 收起 理由
admin_kefu + 100 根据规定进行奖励

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

使用道具

小鳄鱼a 发表于 2014-10-28 19:57:39 |显示全部楼层 |坛友微信交流群
sniperhgy 发表于 2014-10-28 10:17
楼主你好,根据你的要求,是不是只要不是数字值的就代表分组?那么试试如下代码:
谢谢  能否解释一下用法  

使用道具

sniperhgy 发表于 2014-10-28 20:35:03 |显示全部楼层 |坛友微信交流群
小鳄鱼a 发表于 2014-10-28 19:57
谢谢  能否解释一下用法
嗯,这个问题的难点就是SAS里面没有isnumber这种函数,所以咱们自己编写一个
if missing(input(x, best32.)),这句话的思路就是强制转换x到数值,如果转不过去,就是字符了,所以外层的missing会得到true的答案,如果可以转过去,那就是数字啊,所以missing得到false。

使用道具

小鳄鱼a 发表于 2014-10-28 22:19:36 |显示全部楼层 |坛友微信交流群
sniperhgy 发表于 2014-10-28 20:35
嗯,这个问题的难点就是SAS里面没有isnumber这种函数,所以咱们自己编写一个
if missing(input(x, best3 ...
越来越领会到编程需要发散思维了,多谢

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-3-29 04:13