全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
15603 8
2013-09-26
有准备好的数据,现在想在最前面加一列 id从1开始 ;并且是后一个值=前一个值+5的话就还是保持id不变,如果后一个值大于前一个值+5的话 id就加1 。求助~~~
二维码

扫码加我 拉你入群

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

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

全部回复
2013-9-26 21:30:52
1
1
1
1
1
2
2
2
2
2
……
这样??
二维码

扫码加我 拉你入群

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

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

2013-9-27 11:48:51
你需要lag函数:
data test;
  input num;
  datalines;
  1
  4
  9
  10
  16
  17
  19
  34
  ;
run;

data newtest;
        set test;
        if _n_=1 then id = 1;
        if num-lag(num)>5 then id+1;
run;

proc print data=newtest;run;
二维码

扫码加我 拉你入群

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

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

2013-9-27 21:17:15
PhoenixHuang 发表于 2013-9-27 11:48
你需要lag函数:
data test;
  input num;
这个1、4、9、10这一串是干什么用的
二维码

扫码加我 拉你入群

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

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

2013-9-28 10:01:42
妖帝东皇 发表于 2013-9-26 21:30
1
1
1
对的~就是这样
二维码

扫码加我 拉你入群

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

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

2013-9-28 10:24:47
PhoenixHuang 发表于 2013-9-27 11:48
你需要lag函数:
data test;
  input num;
按照你的方法 最后只剩下了num这一列 和id 这一列 其他的变量都不见了~~
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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