私はこの問題を抱えていますが、SASでは。この質問で提供されている例を使用するために、名前の5つの列(name_1、name_2など)があり、名前が頻度の降順でリストされているリストを出力したいと思います。
John 502
Robert 388
William 387
...
... 1
上記の質問に答えて、「procsql;」で囲みました。および「終了;」:
proc sql;
create table freqs as
SELECT name, COUNT(1)
FROM ( SELECT name_1 AS name FROM mytable
UNION ALL SELECT name_2 AS name FROM mytable
UNION ALL SELECT name_3 AS name FROM mytable
UNION ALL SELECT name_4 AS name FROM mytable
UNION ALL SELECT name_5 AS name FROM mytable
) AS myunion
GROUP BY name
ORDER BY COUNT(1) DESC
;
quit;
しかし、取得しています:
ERROR: Summary functions are restricted to the SELECT and HAVING clauses only.
SAS9.2を使用しています。
考え?助けてくれてありがとう!