楼主: sxlion
6060 5

怎么从每组数据中随机抽取一定比例(如25%)或数目的观察值? [推广有奖]

  • 0关注
  • 7粉丝

已卖:218份资源

博士生

58%

还不是VIP/贵宾

-

威望
0
论坛币
2263 个
通用积分
3.2316
学术水平
14 点
热心指数
35 点
信用等级
8 点
经验
4196 点
帖子
196
精华
0
在线时间
421 小时
注册时间
2007-11-12
最后登录
2025-11-1

楼主
sxlion 发表于 2010-7-3 22:18:58 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
不想用随机数,该怎么用proc surveyselect 来抽取这样一个有条件的随机取样呢?

要求从A,B组各抽25%条出来,抽出的观察值放数据集ex1中,剩下的放ex2中。

样本数据如下:
data ex;
input  group $   var1- var4;
cards;
A  1 2 3 4
A 2 3 4 5
A 3 4 5 6
A 4 5 6 7
A 5 6 7 8
A 6 7 8 9
A 7 8 9 10
A 8 9 10 11
A 9 10 11 12
B 10 11 12 13
B 11 12 13 14
B 12 13 14 15
B 13 14 15 16
B 14 15 16 17
B 15 16 17 18
B 16 17 18 19
B 17 18 19 20
B 18 19 20 21
B 19 20 21 22
B 20 21 22 23
B 21 22 23 24
;

谢谢!
二维码

扫码加我 拉你入群

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

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

关键词:surveyselect Surveys Select Survey cards 数据 随机 观察 抽取 数目

沙发
楚韵荆风 学生认证  发表于 2010-7-3 23:08:24
在R中用sample(as.integer(length(x)*25%),x,TRUE)
共享是一种彼此的快乐

藤椅
crackman 发表于 2010-7-3 23:50:40
data ex;
input  group $   var1- var4;
cards;
A  1 2 3 4
A 2 3 4 5
A 3 4 5 6
A 4 5 6 7
A 5 6 7 8
A 6 7 8 9
A 7 8 9 10
A 8 9 10 11
A 9 10 11 12
B 10 11 12 13
B 11 12 13 14
B 12 13 14 15
B 13 14 15 16
B 14 15 16 17
B 15 16 17 18
B 16 17 18 19
B 17 18 19 20
B 18 19 20 21
B 19 20 21 22
B 20 21 22 23
B 21 22 23 24
;
run;
proc surveyselect data=ex(where=(group="A")) method=srs percent=0.25 out=ex11;
run;
proc surveyselect data=ex(where=(group="B")) method=srs percent=0.25 out=ex12;
run;
data ex1;
set ex11 ex12;
run;

板凳
sxlion 发表于 2010-7-4 11:52:47
proc sort ;
by group;
run;
proc surveyselect data=ex rate=0.25   outall  out=ex;
    strata group ;
   run;
data ex1 ex2;
set ex;
if selected then output ex1; else output ex2;
keep  group var1-var4;
run;
已有 1 人评分热心指数 收起 理由
crackman + 1 呵呵

总评分: 热心指数 + 1   查看全部评分

报纸
rdzr 发表于 2010-7-5 13:09:43
2楼、3楼都是高手,学习了,谢谢!

地板
hongxx 发表于 2010-7-5 13:17:18

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-9 08:57