2016-05-04 3 views
0

Есть ли простой способ создания графиков для всех переменных вместо перечисления каждой переменной?SAS - Создание графиков для переменных ALL

Вместо:

proc sgplot data = insurance; histogram YOJ; run; 
proc sgplot data = insurance; histogram INCOME; run; 
proc sgplot data = insurance; histogram HOME_VAL; run; 
proc sgplot data = insurance; histogram CAR_AGE; run; 

Что делать, если у меня был больше 100 гистограмм Я хотел смотреть на один, без использования одномерных процедур? Зачем мне писать каждую строку? Есть ли более простой способ?

Спасибо!

ответ

1

Вы можете использовать proc univariate для генерации статистики и гистограммы для всех переменных. Добавьте оператор ODS SELECT, чтобы включить только гистограмму, в настоящее время она закомментирована.

*ods select histogram; 
proc univariate data=sashelp.class; 
histogram; 
run;quit; 

EDIT: Я попытался с помощью числовой и что не работает, так что помимо прежде всего я мог думать код был макрос. Я бы запросил имена из SASHELP.VCOLUMN и использовал имена в коде.

proc sql noprint; 
select name into :hist_state1- 
from sashelp.vcolumn 
where upper(libname)='SASHELP' 
and upper(memname)='CLASS' 
and type='num'; 
quit; 

%let nobs=&sqlobs; 


%macro generate_histogram; 

%do i=1 %to &nobs; 

proc sgplot data=sashelp.class; 
title "Histogram of &&&hist_state&i"; 
histogram &&&hist_state&i; 
run;quit; 


%end; 

%mend; 

%generate_histogram; 
+0

Спасибо Reeza, но есть ли способ совершать покупки только на участках, используя sgplot? Мне не обязательно видеть статистику. – Starbucks

+0

Это заявление ODS Select было для него - раскомментировать его. Вместо имени переменной вы можете попробовать '_numeric_ '. Не уверен, что это сработает, но не помешает попробовать. – Reeza

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