2016-12-02 10 views
0

Может ли кто-нибудь помочь мне в том, как я могу вычислить корреляцию между двумя переменными внутри каждой группы в Proc Sql? Есть ли такая функция, как сумма или значение? Большое спасибо!proc sql corre

+0

Почему вы хотите сделать это в SQL? У вас есть SAS, поэтому используйте соответствующий инструмент - в этом случае 'proc corr'. – user667489

+0

Я хочу сделать что-то вроде proc sql; выберите groupvar, corr (var1, var2) из ​​группы table by groupvar; Мне нужна переменная корреляции, чтобы быть одним столбцом в конечном агрегированном наборе данных. – tomtomxu

+0

, пожалуйста, отправьте некоторые данные примера и покажите ожидаемый результат. – TheGameiswar

ответ

0

Для начала вы должны использовать proc corr, так как это делает все необходимые вычисления, которые доставят вам большую часть пути. Вам необходимо будет фильтровать и переносить выходной набор данных в желаемый формат. На этом сайте есть много ответов, в которых показано, как это сделать, поэтому взгляните на них - в этом случае требуется широкоформатная перестановка.

proc sort data = sashelp.class out = class; 
    by sex; 
run; 

proc corr data = class outp=mypcorr noprint; 
    var HEIGHT WEIGHT; 
    by SEX; 
run;