2015-02-18 3 views
0

Я хочу посчитать количество раз, когда определенное значение появляется в определенном столбце в sas. Например, в следующем наборе данных значение 1 появляется 3 раза значение 2 появляется дважды, значение 3 появляется один раз, значение 4 появляется 4 раза, а значение 5 отображается четыре раза.Подсчет значений Sas

Game_ball 
    1 
    1 
    1 
    2 
    2 
    3 
    4 
    4 
    4 
    5 
    5 
    5 
    5 
    5 

Я хочу набор данных представлен как следующее:

Game_ball  Count 
    1    3 
    2    2 
    3    1 
    4    4 
    5    4 
    .    . 
    .    . 
    .    . 

Заранее спасибо

+1

Использование 'прок freq': HTTP://support.sas.com/documentation/cdl/en/procstat/63104/HTML/default/viewer.htm#procstat_freq_sect006.htm – DWal

+0

Спасибо за ссылку DWal. – Ankit

ответ

1

Согласно @Dwal, proc freq является самым простым решением.

Используя ваши данные выборки,

proc freq data=sample; 
table game_ball/out=output; 
run; 

Или сделать это в один однопроходной шаг данных

proc sort data = sample;by game_ball;run; 

data output; 
set sample; 
retain count; 
if first.game_ball then count = 0; 
count + 1; 
if last.game_ball then output; 
by game_ball; 
run; 

Или в SQL

proc sql; 
create table output as 
select game_ball, count(*) as count 
from sample 
group by game_ball; 
quit; 
+0

Спасибо, rbet, работает как шарм. – Ankit

+0

Ваш оператор sql не должен использовать отдельное ключевое слово. Это просто «select game_ball, count (*) как count ....' etc –

+0

Спасибо. Ред. – Lovnlust

Смежные вопросы