2012-03-15 3 views
0

Мне нравится рассчитать проценты нескольких переменных. Это расчетная сумма каждой переменной (столбца) и деление каждой переменной суммы на frequnecy. Я попытался получить резюме proc, чтобы получить эти две статистики и сделать массив для вычисления процентов, но значения результата не кажутся правильными, но ошибок в журнале нет. Я видел, что proc sql может делать процентный расчет, но я не знаю, как это сделать для нескольких переменных. - не должно быть сложно, но я просто не уверен, как их перечислить.SAS вычисляет проценты нескольких переменных

Если вы можете указать, что я сделал неправильно 1) в сводном способе proc, или 2) направить меня, как написать список переменных SQL proc, это было бы здорово. спасибо,

Вот код, который я написал:

1)

proc summary data=m3resp; 
var Lma1-Lma69; 
output out=sumofLma sum=sumLma1-sumLma69; 
run; 

data sumLmaout; 
set sumoflma; 
array pctma[69]; 
do i=1 to 69; 
    pctma[i]=input(cat(sumLma,i),5.)/_freq_; 
end; 
drop i; 
run; 

2)

PROC SQL; 
SELECT Lma1 
(Lma1/SUM(Lma1)) AS PCTLma1 
FROM m3resp; 
QUIT; 

ответ

0

PROC Means является отличным инструментом для обобщения числовых переменных. (Чтобы предотвратить отчет, добавьте NOPRINT в строку PROC MEANS).

data numbers; 
input num1 num2; 
datalines; 
10 5 
10 5 
10 5 
10 5 
10 5 
10 5 
10 5 
10 5 
10 5 
10 5 
; 

proc means n sum mean median data=work.numbers maxdec=2; 
var num1 num2; 
output out=work.totals(drop=_freq_ _type_) 
    sum(num1 num2)=NUM1_TOTAL NUM2_TOTAL 
    n(num1 num2)=NUM1_COUNT NUM2_COUNT; 
run; 
+0

ok. вы получили сумму и ncount для переменной eaach. Как бы вы вычислили процент от каждой переменной? – user634455

+0

Я пытался использовать средства proc для этих переменных в процентах к компьютеру, так как эти переменные являются данными 0/1, он работает таким образом. Спасибо! – user634455

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