全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1303 1
2016-10-21
悬赏 5 个论坛币 未解决
我有这样的数据如下:
SYMBOL DATE PRICE
AMD 1 12
AMD 1 11
AMD 1 13
AMD 2 12
AMD 2 12
AMD 2 13
KO 1 4
KO 1 5
KO 1 5
KO 2 4
KO 2 6
KO 2 5
我想按照SYMBOL*DATE分组,每组保留首尾两项。也就是说把上面的数据分成AMD-1, AMD-2, KO-1, KO-2这几组,然后每组保留首尾两项。我想过直接把它们转换成数字再相乘,但是数据集比较大,不知道会不会出现乘积相等但是SYMBOL、DATE并不等的情况。

如果只按一列来分组,那么用FIRST和LAST两个变量就能筛出首尾项。但是如果要按两列甚至多列来分组的话,怎样筛出首尾项呢?
二维码

扫码加我 拉你入群

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

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

全部回复
2016-10-21 21:12:55
是这个意思?

proc sort data=test;
by symbol date;
run;

data wanted;
set test;
by symbol date;
if first.date or last.date;
run;
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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