SAS在数据集中查找唯一的对

SAS在数据集中查找唯一的对,sas,Sas,我正在使用SAS数据集,我想知道如何解决这个问题是SAS 我想为出租车司机找到独特的乘车方式, 其中A到B和B到A算作一次独特的骑乘 举例说明: 数据集: Taxidriver_ID From To date ------------------------------------------ 0123 Address_1 Address_2 1jan2017 0123 Address_2 Addre

我正在使用SAS数据集,我想知道如何解决这个问题是SAS

我想为出租车司机找到独特的乘车方式, 其中A到B和B到A算作一次独特的骑乘

举例说明:

数据集:

Taxidriver_ID From      To        date
------------------------------------------
0123          Address_1 Address_2 1jan2017                  
0123          Address_2 Address_1 1jan2017
0123          Address_3 Address_1 5jan2017
0123          Address_1 Address_3 5jan2017
0123          Address_1 Address_3 6jan2017
0123          Address_4 Address_5 1jan2017
我想将其归类为出租车司机0123的3种独特乘坐方式: 1到2和相反, 1到3,反向和 4至5

我想数一数这些独特的游乐设施的数量。 在示例中,这是4次骑乘 1到2次 1到3次 4到5次


非常感谢您的帮助

您的第一个问题可以通过在地址上选择不同的最小/最大比较组合来解决

data have;
infile datalines;
input taxidriver_id $ from $ to $ date :anydtdte.;
format date date.;
datalines;
0123 Addr_1 Addr_2 1jan2017                  
0123 Addr_2 Addr_1 1jan2017
0123 Addr_3 Addr_1 5jan2017
0123 Addr_1 Addr_3 5jan2017
0123 Addr_1 Addr_3 6jan2017
0123 Addr_4 Addr_5 1jan2017
;
run;

proc sql;
create table want as
select distinct taxidriver_id
               ,ifc(from<to,from,to) as from
               ,ifc(from>to,from,to) as to
from have
;
quit;
你的第二个问题可以通过以下方式得到回答:

proc sql;
create table want as
select taxidriver_id
      ,from
      ,to
      ,count(*) as count
from (
    select distinct taxidriver_id
                   ,ifc(from<to,from,to) as from
                   ,ifc(from>to,from,to) as to
                   ,date
    from have
)
group by taxidriver_id, from, to
;
quit;

请证明您已尝试自己解决此问题。你试过什么?为什么不起作用?