SAS Proc Gchart Укладка участка
Привет, у меня проблема с созданием графа в SAS. мои данные следующие: дата, comp_1,comp_2, comp_3, total_value. Мои данные отсортированы по датам. переменная comp_ представляет ценность компании по конкретным данным. Это мой код на данный момент:
proc gplot data=dev2.Actionfinal2;
plot (comp_1 comp_2 comp_3)*date
/ overlay areas=3 vaxis=0 to 100000 by 20000;
symbol1 i=join v= cv= ci=red;
symbol2 i=join v= cv= ci=blue;
symbol3 i=join v= cv= ci=green;
run;
quit;
На этом графике показано наложение значений для трех компаний, но я хочу, чтобы они были сложены так, чтобы я мог видеть общую стоимость компаний для каждой даты. Нужно ли переформатировать мои данные, какой вариант я могу использовать?
1 ответ
Вам нужно будет создать новую переменную с агрегированным значением трех ваших "comp" переменных. Посмотрите это примечание об использовании SAS с отличным примером. Это должно помочь вам начать и добро пожаловать в Stackru!
ОБНОВЛЕНИЕ: Я думаю, что я лучше понимаю проблему: вам нужно денормализовать ваши данные (превратить столбцы в наблюдения). Так что попробуйте это:
data test(keep=company value date);
set dev2.Actionfinal2;
company = 1; value = comp_1; output;
company = 2; value = comp_2; output;
company = 3; value = comp_3; output;
run;
proc sort data=test;
by date company;
run;
data test2;
set test;
by date;
if first.date then new_y=0;
new_y + value;
run;
symbol1 i=join v= cv= ci=red;
symbol2 i=join v= cv= ci=blue;
symbol3 i=join v= cv= ci=green;
proc gplot data=test2;
plot new_y*date=company
/ areas=3 vaxis=0 to 100000 by 20000;
run;
quit;