- 阅读权限
- 255
- 威望
- 0 级
- 论坛币
- 2321 个
- 通用积分
- 9.8528
- 学术水平
- 179 点
- 热心指数
- 194 点
- 信用等级
- 167 点
- 经验
- 27443 点
- 帖子
- 622
- 精华
- 0
- 在线时间
- 851 小时
- 注册时间
- 2011-3-27
- 最后登录
- 2023-5-14
|
单缺: - data have;
- do _n_ = 1 to 10;
- i = ifn(_n_ = 5,.,_n_);
- output;
- end;
- run;
- data want;
- set have end = last;
- position = _n_ + 1;
- if ~ last then set have(keep = i rename = i=ix) point = position ;
- i = ifn(missing(i),ix,i);
- run;
复制代码连缺: - data have;
- do _n_ = 1 to 10;
- i = ifn(_n_ in (5, 6),.,_n_);
- output;
- end;
- run;
- data x(keep = obs i);
- set have;
- obs = _n_;
- run;
- data want;
- set have end = last;
- if _n_ = 1 then do;
- dcl hash h(dataset:'x');
- h.definekey('obs');
- h.definedata('i');
- h.definedone();
- end;
- do while(~last and missing(i));
- obs = max(_n_, obs) + 1;
- h.find();
- end;
- run;
复制代码
|
|