2017-02-15 6 views
-1

Please see attached fileКак суммировать предыдущие значения строк с текущей строкой в ​​SAS?

Мне нужна колонка суммирования, однако как удерживающие, так и отстающие коммандос неэффективны.

+2

Добро пожаловать в SO. Пожалуйста, введите проблему вместо ссылки на изображение, а также, пожалуйста, покажите, что вы сделали до сих пор. –

+0

Покажите, что вы пробовали с помощью RETAIN или LAG - оба могут в теории работать (RETAIN лучше, я думаю). – Joe

ответ

0

Существует несколько способов. Вы можете использовать proc sql или proc означает. Я написал способ ниже:

data begin; 
    length person $3 sallary 5; 
    input person sallary; 
    datalines; 
    a 200 
    a 300 
    b 800 
    c 400 
    c 500 
    c 600 
    ; 
run; 

proc means data=begin noprint; 
    by person; /*Handle each person as distinct subset*/ 
    output out=Sal_by_person(drop= _type_ _freq_) 
    sum(sallary)=Total_sallary /*What we calculate and what we call them.*/ 
    ; 
run;