全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2673 6
2011-05-30
数据形式如下:       列A  列B
1    红    蓝
2    红    绿
3    蓝    红
4    蓝    绿
……………

认为obs1(红-蓝)与obs3(蓝-红)是重复的观测对,要把obs3删掉,如何实现这一功能。
数据很多,最好给出程序。

坐等各位解答,谢过了!
二维码

扫码加我 拉你入群

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

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

全部回复
2011-5-30 15:47:52
先把颜色按照2次幂进行format,然后对值a1,a2进行数学运算,然后sort 取nodupkey
二维码

扫码加我 拉你入群

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

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

2011-5-30 16:24:40
楼上可不可以说的详细点啊?谢谢了~
二维码

扫码加我 拉你入群

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

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

2011-5-30 16:54:17
比如有7种颜色,我们可以取
proc format;
   invalue color
   "红"=1
   “橙”=2
   “黄”=4
   “绿”=8
   “蓝”=16
   ...

run;
data b;
   set a;
   a1=input(a,color.);
   b1=input(b,color.);
   c=a1+b1;
   drop a1 b1;
run;

proc sort data=b nodupkey;
   by c;
run;
二维码

扫码加我 拉你入群

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

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

2011-5-30 18:28:39
多谢楼上热心解答,但是我数据太多了,有60000条观测,而且为了方便提问,我用了颜色来代替字符串,其实是8个字节的字符串,要是用幂来format的话,是不大可能实现的~还是多谢了!
二维码

扫码加我 拉你入群

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

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

2011-5-30 19:12:20
复制代码
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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