全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1980 2
2018-12-18
悬赏 30 个论坛币 已解决
需要用x列求得y列
求大神帮忙!
由于还有其他变量,简化如图所示:
已知x列与前面A-D的变量名,需要求得y列,y列为x列每个从1开始到下一个1之前数字的个数。

最佳答案

l1i2n3i4n5g 查看完整内容

data test; input x @@; cards; 1 1 2 3 1 2 1 2 1 2 1 1 2 3 4 5 6 ; run; data want; set test; id=_n_; run; proc sort data=want; by descending id; run; data want; set want; retain y; dif=dif(x); if _n_=1 then y=x; else if dif>=0 then y=x; drop dif; run; proc sort data=want; by id; run; proc print;run;
二维码

扫码加我 拉你入群

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

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

全部回复
2018-12-18 02:09:19
data test;
   input x @@;
cards;
1 1 2 3 1 2 1 2 1 2 1 1 2 3 4 5 6
;
run;

data want;
   set test;
   id=_n_;
run;

proc sort data=want;
   by descending id;
run;

data want;
   set want;
   retain y;
   dif=dif(x);
   if _n_=1 then y=x;
   else if dif>=0 then y=x;
   drop dif;
run;

proc sort data=want;
   by id;
run;

proc print;run;
二维码

扫码加我 拉你入群

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

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

2018-12-18 11:26:06
l1i2n3i4n5g 发表于 2018-12-18 10:01
data test;
   input x @@;
cards;
谢谢大神
二维码

扫码加我 拉你入群

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

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

栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群