匹配观察在同一个表中

时间:2018-04-25 04:12:20

标签: sas

我想知道SAS是否可以根据多个匹配条件匹配同一个表中的观察结果,然后标记它们。 例如,我想要观察与年龄和性别相匹配的观察结果,但仅根据他们是否喜欢星球大战而有所不同。

这是我的数据

   age  gender  Like star wars  Location
    34  male         1            US
    36  female       0            UK
    24  female       1            AU
    45  female       1            US
    34  male         0            CH
    36  female       1            US
    57  female       0            US

>    age    gender  Like star wars  Location    Match
>     34    male         1            US         Yes
>     36    female       0            UK         Yes
>     24    female       1            AU         No
>     45    female       1            US         No
>     34    male         0            CH         Yes
>     36    female       1            US         Yes
>     57    female       0            US         No

1 个答案:

答案 0 :(得分:0)

如果您按年龄和性别对数据进行排序,则“匹配”将组合在一起。可以使用first.last.处理轻松检测到不匹配项。 first.last.的行都没有匹配。

proc sort data=have;
by age gender;

data want;
set have;
by age gender;
match = ifc(first.age and last.age, 'No', 'Yes');
run;

enter image description here