楼主: lnlhckao123
2308 11

[问答] 500论坛币求随机抽样后样本与总体比较的sas程序 [推广有奖]

  • 0关注
  • 3粉丝

副教授

61%

还不是VIP/贵宾

-

威望
0
论坛币
14832 个
通用积分
9.1001
学术水平
7 点
热心指数
4 点
信用等级
4 点
经验
12566 点
帖子
754
精华
0
在线时间
399 小时
注册时间
2010-8-21
最后登录
2024-2-8

500论坛币
我有如下sas程序,但是此程序运行1次,只能求出随机抽样1次后所得的均数及标准差,必须不断变换seed的值,才能得到不同的样本样,如,我每次换一个seed的值,从1换到100,这样得到100个样本,这样工作量很大,可不可以写一个sas程序,满足如下要求:
1.我只要调整设定值n后,可以得到n个样本量(从总体aa中获得),并得到每个样本的均数及标准差。
2用随机抽样得到的每一个样本aax(x=1,2,3,4。。。)与总体(aa)t检验后得到每一个P值,并把每一个P值组成表格列出来,在结果中显示处理来。
谢谢高手!!


data aa;
do i=1 to 1000;
x=10+2*rannor(1);
output;
end;
run;


proc surveyselect data=aa out=aa1 method=srs n=100 seed=1;
run;
proc univariate data=aa1 normal ;
var x;
run;

关键词:500论坛币 sas程序 随机抽样 0论坛币 论坛币 程序
即使在人大经济论坛这个网络世界,我仍以真诚为基础与我的好友进行交往!
沙发
jl60156 发表于 2014-12-22 04:56:18 |只看作者 |坛友微信交流群
data aa;
length grp $20;
do i=1 to 1000;
x=10+2*rannor(1);
grp='aa0';
output;
end;
run;

%macro test(dsn=,samplen=100,seed=,b=0);
%do i=1 %to &dsn;
%syscall ranuni(seed,b);
proc surveyselect data=aa out=aa&i method=srs n=&samplen seed=&seed;
run;
data aa&i;
        set aa&i;
        length grp $20;
        grp="aa&i";
run;
data final;
        set aa&i aa;
run;
proc ttest data=final;
class grp;
var x;
ods output ttests=stat(keep=variable variances probt) equality=vareq(keep=variable probf);
run;
data stat;
        merge stat vareq;
        by variable;
run;
data stat&i;
        set stat;
        length grp $20;
        grp="aa&i";
        if probf>0.05 then
        if upcase(variances)='EQUAL';
        else if probf<=0.05 then
        if upcase(variances)='UNEQUAL';
run;
%end;
data want;
        set %do i=1 %to &dsn; stat&i %end;;
run;
proc datasets;
   delete %do i=1 %to &dsn; stat&i %end;;

%mend;
%test(dsn=100,samplen=100,seed=123456);

使用道具

藤椅
jingju11 发表于 2014-12-22 14:02:26 |只看作者 |坛友微信交流群
Good. thanks.
JingJu

使用道具

板凳
jingju11 发表于 2014-12-22 14:05:25 |只看作者 |坛友微信交流群
  1. I may give program later. JingJu
复制代码

使用道具

报纸
lnlhckao123 发表于 2015-1-1 00:04:17 |只看作者 |坛友微信交流群
谢谢jl60156的指点,运行您给的程序后,我有疑问再请教一下:
1.你的程序里方框是什么意思。
2.我运行你的程序后,为什么未在结果的方框里见到随机生成的总体aa。
3.为什么没见到从总体aa中生成的n个样本aan(n=1.2.3.4.5.6.7.8.9......)。4.为什么没见到每个样本aan(n=1.2.3.4.5.6.7.8.9......)的均数与标准差。
5.为什么没见到从总体aa中随机抽样获得的样本aan(n=1.2.3.4.5.6.7.8.9......)与总体aa比较所得的P值。
谢谢jl60156!


使用道具

地板
lnlhckao123 发表于 2015-1-1 00:10:41 |只看作者 |坛友微信交流群
请问jl60156,您的程序复制后是下面这样子吗?谢谢!

data aa;
length grp 20;
do i=1 to 1000;
x=10+2*rannor(1);
grp='aa0';
output;
end;
run;

%macro test(dsn=,samplen=100,seed=,b=0);
%do i=1 %to &dsn;
%syscall ranuni(seed,b);
proc surveyselect data=aa out=aa&i method=srs n=&samplen seed=&seed;
run;
data aa&i;
        set aa&i;
        length grp20;
        grp="aa&i";
run;
data final;
        set aa&i aa;
run;
proc ttest data=final;
class grp;
var x;
ods output ttests=stat(keep=variable variances probt) equality=vareq(keep=variable probf);
run;
data stat;
        merge stat vareq;
        by variable;
run;
data stat&i;
        set stat;
        length grp $20;
        grp="aa&i";
        if probf>0.05 then
        if upcase(variances)='EQUAL';
        else if probf<=0.05 then
        if upcase(variances)='UNEQUAL';
run;
%end;
data want;
        set %do i=1 %to &dsn; stat&i %end;;
run;
proc datasets;
   delete %do i=1 %to &dsn; stat&i %end;;

%mend;
%test(dsn=100,samplen=100,seed=123456);

使用道具

7
lnlhckao123 发表于 2015-1-1 00:10:43 |只看作者 |坛友微信交流群
请问jl60156,您的程序复制后是下面这样子吗?谢谢!

data aa;
length grp 20;
do i=1 to 1000;
x=10+2*rannor(1);
grp='aa0';
output;
end;
run;

%macro test(dsn=,samplen=100,seed=,b=0);
%do i=1 %to &dsn;
%syscall ranuni(seed,b);
proc surveyselect data=aa out=aa&i method=srs n=&samplen seed=&seed;
run;
data aa&i;
        set aa&i;
        length grp20;
        grp="aa&i";
run;
data final;
        set aa&i aa;
run;
proc ttest data=final;
class grp;
var x;
ods output ttests=stat(keep=variable variances probt) equality=vareq(keep=variable probf);
run;
data stat;
        merge stat vareq;
        by variable;
run;
data stat&i;
        set stat;
        length grp $20;
        grp="aa&i";
        if probf>0.05 then
        if upcase(variances)='EQUAL';
        else if probf<=0.05 then
        if upcase(variances)='UNEQUAL';
run;
%end;
data want;
        set %do i=1 %to &dsn; stat&i %end;;
run;
proc datasets;
   delete %do i=1 %to &dsn; stat&i %end;;

%mend;
%test(dsn=100,samplen=100,seed=123456);

使用道具

8
lnlhckao123 发表于 2015-1-1 00:16:00 |只看作者 |坛友微信交流群
jl60156您好!这是运行你的程序后得到的结果,我看不懂,如 AA1  DATA  5120 各是什么意思,可否稍微解释一下,谢谢!
The SAS System


Directory
Libref WORK
Engine V9
Physical Name C:\Users\SONY\AppData\Local\Temp\SAS Temporary Files\_TD1636_SONY-VAIO_
Filename C:\Users\SONY\AppData\Local\Temp\SAS Temporary Files\_TD1636_SONY-VAIO_



# Name Member Type File Size Last Modified
1 AA DATA 5120 31Dec14:23:51:12
2 AA1 DATA 5120 31Dec14:23:51:13
3 AA10 DATA 5120 31Dec14:23:51:15
4 AA100 DATA 5120 31Dec14:23:51:22
5 AA11 DATA 5120 31Dec14:23:51:15
6 AA12 DATA 5120 31Dec14:23:51:15
7 AA13 DATA 5120 31Dec14:23:51:15
8 AA14 DATA 5120 31Dec14:23:51:15
9 AA15 DATA 5120 31Dec14:23:51:15
10 AA16 DATA 5120 31Dec14:23:51:15
11 AA17 DATA 5120 31Dec14:23:51:15
12 AA18 DATA 5120 31Dec14:23:51:15
13 AA19 DATA 5120 31Dec14:23:51:15
14 AA2 DATA 5120 31Dec14:23:51:14
15 AA20 DATA 5120 31Dec14:23:51:15
16 AA21 DATA 5120 31Dec14:23:51:15
17 AA22 DATA 5120 31Dec14:23:51:15
18 AA23 DATA 5120 31Dec14:23:51:16
19 AA24 DATA 5120 31Dec14:23:51:16
20 AA25 DATA 5120 31Dec14:23:51:16
21 AA26 DATA 5120 31Dec14:23:51:16
22 AA27 DATA 5120 31Dec14:23:51:16
23 AA28 DATA 5120 31Dec14:23:51:16
24 AA29 DATA 5120 31Dec14:23:51:16
25 AA3 DATA 5120 31Dec14:23:51:14
26 AA30 DATA 5120 31Dec14:23:51:16
27 AA31 DATA 5120 31Dec14:23:51:16
28 AA32 DATA 5120 31Dec14:23:51:17
29 AA33 DATA 5120 31Dec14:23:51:17
30 AA34 DATA 5120 31Dec14:23:51:17
31 AA35 DATA 5120 31Dec14:23:51:17
32 AA36 DATA 5120 31Dec14:23:51:17
33 AA37 DATA 5120 31Dec14:23:51:17
34 AA38 DATA 5120 31Dec14:23:51:17
35 AA39 DATA 5120 31Dec14:23:51:17
36 AA4 DATA 5120 31Dec14:23:51:14
37 AA40 DATA 5120 31Dec14:23:51:17
38 AA41 DATA 5120 31Dec14:23:51:17
39 AA42 DATA 5120 31Dec14:23:51:17
40 AA43 DATA 5120 31Dec14:23:51:17
41 AA44 DATA 5120 31Dec14:23:51:17
42 AA45 DATA 5120 31Dec14:23:51:18
43 AA46 DATA 5120 31Dec14:23:51:18
44 AA47 DATA 5120 31Dec14:23:51:18
45 AA48 DATA 5120 31Dec14:23:51:18
46 AA49 DATA 5120 31Dec14:23:51:18
47 AA5 DATA 5120 31Dec14:23:51:14
48 AA50 DATA 5120 31Dec14:23:51:18
49 AA51 DATA 5120 31Dec14:23:51:18
50 AA52 DATA 5120 31Dec14:23:51:18
51 AA53 DATA 5120 31Dec14:23:51:18
52 AA54 DATA 5120 31Dec14:23:51:18
53 AA55 DATA 5120 31Dec14:23:51:18
54 AA56 DATA 5120 31Dec14:23:51:18
55 AA57 DATA 5120 31Dec14:23:51:18
56 AA58 DATA 5120 31Dec14:23:51:18
57 AA59 DATA 5120 31Dec14:23:51:19
58 AA6 DATA 5120 31Dec14:23:51:14
59 AA60 DATA 5120 31Dec14:23:51:19
60 AA61 DATA 5120 31Dec14:23:51:19
61 AA62 DATA 5120 31Dec14:23:51:19
62 AA63 DATA 5120 31Dec14:23:51:19
63 AA64 DATA 5120 31Dec14:23:51:19
64 AA65 DATA 5120 31Dec14:23:51:19
65 AA66 DATA 5120 31Dec14:23:51:19
66 AA67 DATA 5120 31Dec14:23:51:19
67 AA68 DATA 5120 31Dec14:23:51:19
68 AA69 DATA 5120 31Dec14:23:51:19
69 AA7 DATA 5120 31Dec14:23:51:14
70 AA70 DATA 5120 31Dec14:23:51:19
71 AA71 DATA 5120 31Dec14:23:51:19
72 AA72 DATA 5120 31Dec14:23:51:20
73 AA73 DATA 5120 31Dec14:23:51:20
74 AA74 DATA 5120 31Dec14:23:51:20
75 AA75 DATA 5120 31Dec14:23:51:20
76 AA76 DATA 5120 31Dec14:23:51:20
77 AA77 DATA 5120 31Dec14:23:51:20
78 AA78 DATA 5120 31Dec14:23:51:20
79 AA79 DATA 5120 31Dec14:23:51:20
80 AA8 DATA 5120 31Dec14:23:51:14
81 AA80 DATA 5120 31Dec14:23:51:20
82 AA81 DATA 5120 31Dec14:23:51:20
83 AA82 DATA 5120 31Dec14:23:51:20
84 AA83 DATA 5120 31Dec14:23:51:20
85 AA84 DATA 5120 31Dec14:23:51:20
86 AA85 DATA 5120 31Dec14:23:51:21
87 AA86 DATA 5120 31Dec14:23:51:21
88 AA87 DATA 5120 31Dec14:23:51:21
89 AA88 DATA 5120 31Dec14:23:51:21
90 AA89 DATA 5120 31Dec14:23:51:21
91 AA9 DATA 5120 31Dec14:23:51:14
92 AA90 DATA 5120 31Dec14:23:51:21
93 AA91 DATA 5120 31Dec14:23:51:21
94 AA92 DATA 5120 31Dec14:23:51:21
95 AA93 DATA 5120 31Dec14:23:51:21
96 AA94 DATA 5120 31Dec14:23:51:21
97 AA95 DATA 5120 31Dec14:23:51:21
98 AA96 DATA 5120 31Dec14:23:51:21
99 AA97 DATA 5120 31Dec14:23:51:21
100 AA98 DATA 5120 31Dec14:23:51:21
101 AA99 DATA 5120 31Dec14:23:51:21
102 FINAL DATA 5120 31Dec14:23:51:22
103 SASMACR CATALOG 5120 31Dec14:23:51:13
104 STAT DATA 5120 31Dec14:23:51:14
105 STAT1 DATA 5120 31Dec14:23:51:14
106 STAT10 DATA 5120 31Dec14:23:51:15
107 STAT100 DATA 5120 31Dec14:23:51:22
108 STAT11 DATA 5120 31Dec14:23:51:15
109 STAT12 DATA 5120 31Dec14:23:51:15
110 STAT13 DATA 5120 31Dec14:23:51:15
111 STAT14 DATA 5120 31Dec14:23:51:15
112 STAT15 DATA 5120 31Dec14:23:51:15
113 STAT16 DATA 5120 31Dec14:23:51:15
114 STAT17 DATA 5120 31Dec14:23:51:15
115 STAT18 DATA 5120 31Dec14:23:51:15
116 STAT19 DATA 5120 31Dec14:23:51:15
117 STAT2 DATA 5120 31Dec14:23:51:14
118 STAT20 DATA 5120 31Dec14:23:51:15
119 STAT21 DATA 5120 31Dec14:23:51:15
120 STAT22 DATA 5120 31Dec14:23:51:15
121 STAT23 DATA 5120 31Dec14:23:51:16
122 STAT24 DATA 5120 31Dec14:23:51:16
123 STAT25 DATA 5120 31Dec14:23:51:16
124 STAT26 DATA 5120 31Dec14:23:51:16
125 STAT27 DATA 5120 31Dec14:23:51:16
126 STAT28 DATA 5120 31Dec14:23:51:16
127 STAT29 DATA 5120 31Dec14:23:51:16
128 STAT3 DATA 5120 31Dec14:23:51:14
129 STAT30 DATA 5120 31Dec14:23:51:16
130 STAT31 DATA 5120 31Dec14:23:51:17
131 STAT32 DATA 5120 31Dec14:23:51:17
132 STAT33 DATA 5120 31Dec14:23:51:17
133 STAT34 DATA 5120 31Dec14:23:51:17
134 STAT35 DATA 5120 31Dec14:23:51:17
135 STAT36 DATA 5120 31Dec14:23:51:17
136 STAT37 DATA 5120 31Dec14:23:51:17
137 STAT38 DATA 5120 31Dec14:23:51:17
138 STAT39 DATA 5120 31Dec14:23:51:17
139 STAT4 DATA 5120 31Dec14:23:51:14
140 STAT40 DATA 5120 31Dec14:23:51:17
141 STAT41 DATA 5120 31Dec14:23:51:17
142 STAT42 DATA 5120 31Dec14:23:51:17
143 STAT43 DATA 5120 31Dec14:23:51:17
144 STAT44 DATA 5120 31Dec14:23:51:18
145 STAT45 DATA 5120 31Dec14:23:51:18
146 STAT46 DATA 5120 31Dec14:23:51:18
147 STAT47 DATA 5120 31Dec14:23:51:18
148 STAT48 DATA 5120 31Dec14:23:51:18
149 STAT49 DATA 5120 31Dec14:23:51:18
150 STAT5 DATA 5120 31Dec14:23:51:14
151 STAT50 DATA 5120 31Dec14:23:51:18
152 STAT51 DATA 5120 31Dec14:23:51:18
153 STAT52 DATA 5120 31Dec14:23:51:18
154 STAT53 DATA 5120 31Dec14:23:51:18
155 STAT54 DATA 5120 31Dec14:23:51:18
156 STAT55 DATA 5120 31Dec14:23:51:18
157 STAT56 DATA 5120 31Dec14:23:51:18
158 STAT57 DATA 5120 31Dec14:23:51:18
159 STAT58 DATA 5120 31Dec14:23:51:19
160 STAT59 DATA 5120 31Dec14:23:51:19
161 STAT6 DATA 5120 31Dec14:23:51:14
162 STAT60 DATA 5120 31Dec14:23:51:19
163 STAT61 DATA 5120 31Dec14:23:51:19
164 STAT62 DATA 5120 31Dec14:23:51:19
165 STAT63 DATA 5120 31Dec14:23:51:19
166 STAT64 DATA 5120 31Dec14:23:51:19
167 STAT65 DATA 5120 31Dec14:23:51:19
168 STAT66 DATA 5120 31Dec14:23:51:19
169 STAT67 DATA 5120 31Dec14:23:51:19
170 STAT68 DATA 5120 31Dec14:23:51:19
171 STAT69 DATA 5120 31Dec14:23:51:19
172 STAT7 DATA 5120 31Dec14:23:51:14
173 STAT70 DATA 5120 31Dec14:23:51:19
174 STAT71 DATA 5120 31Dec14:23:51:20
175 STAT72 DATA 5120 31Dec14:23:51:20
176 STAT73 DATA 5120 31Dec14:23:51:20
177 STAT74 DATA 5120 31Dec14:23:51:20
178 STAT75 DATA 5120 31Dec14:23:51:20
179 STAT76 DATA 5120 31Dec14:23:51:20
180 STAT77 DATA 5120 31Dec14:23:51:20
181 STAT78 DATA 5120 31Dec14:23:51:20
182 STAT79 DATA 5120 31Dec14:23:51:20
183 STAT8 DATA 5120 31Dec14:23:51:14
184 STAT80 DATA 5120 31Dec14:23:51:20
185 STAT81 DATA 5120 31Dec14:23:51:20
186 STAT82 DATA 5120 31Dec14:23:51:20
187 STAT83 DATA 5120 31Dec14:23:51:20
188 STAT84 DATA 5120 31Dec14:23:51:21
189 STAT85 DATA 5120 31Dec14:23:51:21
190 STAT86 DATA 5120 31Dec14:23:51:21
191 STAT87 DATA 5120 31Dec14:23:51:21
192 STAT88 DATA 5120 31Dec14:23:51:21
193 STAT89 DATA 5120 31Dec14:23:51:21
194 STAT9 DATA 5120 31Dec14:23:51:15
195 STAT90 DATA 5120 31Dec14:23:51:21
196 STAT91 DATA 5120 31Dec14:23:51:21
197 STAT92 DATA 5120 31Dec14:23:51:21
198 STAT93 DATA 5120 31Dec14:23:51:21
199 STAT94 DATA 5120 31Dec14:23:51:21
200 STAT95 DATA 5120 31Dec14:23:51:21
201 STAT96 DATA 5120 31Dec14:23:51:21
202 STAT97 DATA 5120 31Dec14:23:51:21
203 STAT98 DATA 5120 31Dec14:23:51:21
204 STAT99 DATA 5120 31Dec14:23:51:22
205 WANT DATA 5120 31Dec

使用道具

9
jl60156 发表于 2015-1-1 01:02:43 |只看作者 |坛友微信交流群
data aa;
length grp $20;
do i=1 to 1000;
x=10+2*rannor(1);
grp='aa0';
output;
end;
run;

%macro test(dsn=,samplen=100,seed=,b=0);
%do i=1 %to &dsn;
%syscall ranuni(seed,b);
proc surveyselect data=aa out=aa&i method=srs n=&samplen seed=&seed;
run;
data _aa&i;
        set aa&i;
        length grp $20;
        grp="aa&i";
run;
proc sql;
        create table aa&i as
                select *, mean(x) as meanx, std(x) as stdx
                from _aa&i
                group by grp
                ;
quit;

data final;
        set aa&i aa;
run;
proc ttest data=final;
class grp;
var x;
ods output ttests=stat equality=vareq(keep=variable probf);
run;
data stat;
        merge stat vareq;
        by variable;
run;
data stat&i;
        set stat;
        length grp $20;
        grp="aa&i";
        if probf>0.05 then
        if upcase(variances)='EQUAL';
        else if probf<=0.05 then
        if upcase(variances)='UNEQUAL';
run;
%end;
data want;
        set %do i=1 %to &dsn; stat&i %end;;
run;
proc datasets;
   delete %do i=1 %to &dsn; stat&i _aa&i %end;;
%mend;
%test(dsn=10,samplen=100,seed=123456);

使用道具

10
jl60156 发表于 2015-1-1 01:08:15 |只看作者 |坛友微信交流群
In the above code  dsn is set equal to 10. so 10 sample data will be created. AA1 --- AA10 are the 10 sample data including mean and std. Stat1 ------Stat10 are corresponding statistic for each t-test between aa1--aa10 and aa.
all p-values are summarized in WANT data set.
已有 1 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
lnlhckao123 + 5 + 4 + 4 + 4 精彩帖子

总评分: 论坛币 + 5  学术水平 + 4  热心指数 + 4  信用等级 + 4   查看全部评分

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-25 10:20