如何使用 SAS 从 table 中获取高发生变量?

how to get high occurring variable from a table using SAS?

我有一个table如下

level1      level2
furniture   chair
furniture   chair
furniture   table
food        pizza

我想获得唯一的 1 级变量和该变量出现次数最多的 2 级变量。输出:

level1      level2
furniture   chair
food        pizza
  1. 汇总数据以获得计数,PROC FREQ。

  2. 按 level1 降序排序。

  3. 使用数据步和 BY 组处理获取每个级别的第一个观测值1。

    proc freq data=have order = freq;
    table level1*level2 / out=counts;
    run;
    
    proc sort data=counts;
    by level1 descending Count;
    run;
    
    data want;
    set counts;
    by level1;
    if first.level1;
    run;