全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
5747 11
2010-08-17
RT。

需要对variable进行运算。

但是不同的公司,对应不同的时间段。

需要对同一公司的时间序列进行运算。这样的话如果是lag2(var)的时候,该组的第一个值和第一个值都应该是缺失值,怎么才能让运算的时候自动为缺失值呢?

(一个比较直接的方法可能是先全部一起算出来,然后再设为缺失值,用first即可,但是第二个也设为缺失值,就不知道怎么弄了。。。。)

不知道哪位高手能指点下?
二维码

扫码加我 拉你入群

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

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

全部回复
2010-8-17 10:15:17
没太明白,把缺失值去掉不行吗?
二维码

扫码加我 拉你入群

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

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

2010-8-17 10:17:43
不 知道的哦
呵呵
二维码

扫码加我 拉你入群

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

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

2010-8-17 10:19:41
tracyyang 发表于 2010-8-17 10:15
没太明白,把缺失值去掉不行吗?
就是如果不加条件的话,直接a=lag2(b)的话,这样会把上一组的数据带到这组来。

这样不会产生缺失值。

我的目的就是要让每组前两个数据算出来的新变量为缺失值。因为是lag2,所以每组第一个和第二个不应该有对应的值的。
二维码

扫码加我 拉你入群

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

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

2010-8-17 11:05:41
proc sort data=sashelp.class out=class;
   by sex height;
run;

data wanted;
    set class;
        by sex height;
        lag_H=lag(height);
        if first.sex then call missing(lag_h);
        lag_2h=lag(lag_H);
        if first.sex then call missing(lag_2h);
run;
二维码

扫码加我 拉你入群

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

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

2010-8-17 14:36:52
5# pobel

谢谢probel。

但是是lag2(b),这样的话,是不是第一个和第二个都要是missing才对?

第二个missing不知道用什么设置呢?
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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