2013-12-22 3 views
-1

Моего набора данных в этом формате, как указано ниже:Обобщая данные в SAS по группам

NEWID 
Age 
H_PERS 
Income 
OCCU 
FAMTYPE 
REGION 
Metro(Yes/No) 
Exp_alcohol 
population sample-(This is the weighted population each new id represents) etc. 

Я хотел бы генерировать обобщенный вид, как показано ниже:

average expenditure value (This should be sum of (exp_alcohol/population sample)) 

% of population sample across Region Metro and each demographic variable 

Пожалуйста, помогите мне с вашим идеи.

+0

'Демографические variable' немного неясно, из информации. вы поставили. Можем ли мы увидеть примерный набор данных или ожидаемый результат? –

+0

Вопросы, требующие кода, должны показать минимальное понимание проблемы. – Joe

ответ

0

Поскольку я не вижу ваш набор данных, и ваше описание было не очень ясным, я собираюсь предположить, что у вас есть данные, которые выглядят примерно так, и вы хотели бы добавить некоторые новые переменные, которые суммируют ваши данные. .

data alcohol; 
input NEWID Age H_PERS Income OCCU $ FAMTYPE $ REGION $ Metro $ 
Exp_alcohol population_sample; 
datalines; 
1234 32 4 65000 abc m CA Yes 2 4 
5678 23 5 35000 xyz s WA Yes 3 6 
9923 34 3 49000 def d OR No 3 9 
8844 26 4 54000 gdp m CA No 1 5 
; 
run; 

data summar; 
    set alcohol; 
    retain TotalAvg_expend metro_count total_pop; 

    Divide = exp_alcohol/population_sample; 
    TotalAvg_expend + Divide; 
    total_pop + population_sample; 
    if metro = 'Yes' then metro_count + population_sample; 
    percent_metro = (metro_count/total_pop)*100; 
    drop NEWID Age H_PERS Income OCCU FAMTYPE REGION Divide; 
run; 

Выход:

    Exp_  population_ TotalAvg_ metro_ total_ percent_ 
     Metro alcohol  sample  expend  count  pop  metro 

     Yes  2   4   0.50000  4   4  100.000 
     Yes  3   6   1.00000  10  10  100.000 
     No   3   9   1.33333  10  19  52.632 
     No   1   5   1.53333  10  24  41.667 
Смежные вопросы