楼主: wellsuer
3256 3

sas 变量中连续出现数字的统计 [推广有奖]

  • 0关注
  • 1粉丝

已卖:1268份资源

硕士生

7%

还不是VIP/贵宾

-

威望
0
论坛币
5989 个
通用积分
88.4762
学术水平
1 点
热心指数
6 点
信用等级
1 点
经验
2997 点
帖子
82
精华
0
在线时间
151 小时
注册时间
2011-3-15
最后登录
2025-12-3

楼主
wellsuer 发表于 2013-6-27 11:53:46 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
现在变量d包含以下观测
0 0 0 0 1 1 1 0 0 0 1 0 0 0 1 0 1 1 0 0 1 0 1 0 0 0 0 1 0 1 1 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 1 0 1 0 0 0 0 1 1 0


请问如何计算0连续出现3次以上的次数

二维码

扫码加我 拉你入群

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

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

关键词:字符串 统计

沙发
hopewell 发表于 2013-6-27 16:22:01
  1. data _null_;
  2.     infile datalines truncover;
  3.     input x $1-200;
  4.     N=count(prxchange('s/(0\s){3,}/X/',-1,x),'X');
  5.     put n=;
  6. datalines;
  7. 0 0 0 0 1 1 1 0 0 0 1 0 0 0 1 0 1 1 0 0 1 0 1 0 0 0 0 1 0 1 1 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 1 0 1 0 0 0 0 1 1 0
  8. ;
复制代码
观钓颇逾垂钓趣 种花何问看花谁

藤椅
boe 发表于 2013-6-27 16:23:00
  1. /*****************错误,不知道为什么???***************/
  2. data t1;
  3.     input x1-x61;
  4.     array x x1-x61;
  5.     do over x;
  6.         if x=0 then n=n+1;
  7.         else n=0;
  8.         put n=;
  9.         if n=3 then do;
  10.             count+1;
  11.             put count=;
  12.         end;
  13.     end;
  14.     drop n;
  15. datalines;
  16. 0 0 0 0 1 1 1 0 0 0 1 0 0 0 1 0 1 1 0 0 1 0 1 0 0 0 0 1 0 1 1 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 1 0 1 0 0 0 0 1 1 0
  17. ;
  18. run;
  19. /************************正确*************************/
  20. data t2;
  21.     input x @@;
  22.     if x=0 then n+1;
  23.     else n=0;
  24.     put n=;
  25.     if n=3 then do;
  26.         count+1;
  27.         put count=;
  28.     end;
  29.     drop n;
  30. datalines;
  31. 0 0 0 0 1 1 1 0 0 0 1 0 0 0 1 0 1 1 0 0 1 0 1 0 0 0 0 1 0 1 1 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 1 0 1 0 0 0 0 1 1 0
  32. ;
  33. run;
复制代码

Gorgeous girl , I love !

板凳
071029 发表于 2013-6-27 18:01:38
  1. /*怎么把想要的结果选出来?*/data test;
  2. input id@@;
  3. cards;
  4. 0 0 0 0 1 1 1 0 0 0 1 0 0 0 1 0 1 1 0 0 1 0 1 0 0 0 0 1 0 1 1 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0 1 1 0 1 0 0 0 0 1 1 0
  5. run;
  6. data out;
  7. set test;
  8. y=lag(id);
  9. retain lag 1;
  10. if id=y then lag=lag+1;
  11. else lag=1;
  12. *if lag ge 3 and id=0 then output;
  13. run;
复制代码

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-31 10:13