全部版块 我的主页
论坛 站务区 十一区 新手入门区
1549 0
2014-04-10
data example6_7;
do company=1 to 5;
do month=1 to 12;
input sales@@;output;
end;end;
cards;
21 23 25 28 31 34 37 41 45 50 54 60
22 25 29 33 38 44 51 59 67 77 89 102
23 28 33 40 48 57 69 82 99 119 142 171
24 30 38 47 59 73 92 114 143 179 224 279
25 33 42 55 71 93 121 157 204 265 345 448
;
run;
%macro univariate(data,var,group);
proc sort data=&data; by &group;run;

proc univariate data=&data noprint;
var &var; by &group;
output out=result n=n nmiss=nmiss
mean=mean std=std
median=median q1=q1 q3=q3
min=min max=max;
run;

data a (where=(&group=1)) b (where=(&group=2));
set result;
format mean 6.1 median 6.1 std 6.1;
run;

data ab;
merge a (rename=(n=na nmiss=nmissa
mean=meana std=stda
median=mediana q1=q1a q3=q3a
min=mina max=maxa))
b (rename=(n=nb nmiss=nmissb
mean=meanb std=stdb
median=medianb q1=q1b q3=q3b
min=minb max=maxb))
run;
%mend univariate;

%univariate(example6_7,sales, company);

data _null_;
file print notitle;
set abcde;
put #1 @5 "指标"  @22  "子公司1"  @42 "子公司2"
    #2 @5 "例数(缺失)" @22 NA '(' nmissa')' @42 NB '(' nmissb')'
    #3 @5 "均数(标准差)" @22 meanA '(' stda')' @42 meanB '(' stdB')'
    #4 @5 "中位数(Q1-Q3)" @22 mediana '(' q1a '~' q3a')' @42 medianb '(' q1b '~' q3b')'
        #5 @5 "最小值-最大值" @22 mina '~' maxa @42 minb '~' maxb;
run;
%macro 后面就看不懂了,希望能帮帮忙,初学者,感谢~

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群