楼主: zhangsi11
591 1

[问答] SAS怎么实现每组数据抽取一个? [推广有奖]

  • 0关注
  • 0粉丝

学前班

90%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
20 点
帖子
1
精华
0
在线时间
5 小时
注册时间
2023-4-2
最后登录
2023-7-19

楼主
zhangsi11 发表于 2023-4-5 22:04:37 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

这是我导入到SAS studio的数据结果 1680703312925.png a7b4b771f7cec0dd949afa886e14589.jpg
接下来应该怎么做?
我需要在x=800,1100,1400...等x对应的y值里面随机抽取一个,要怎么做呢?
二维码

扫码加我 拉你入群

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

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

关键词:Studio 数据结果 怎么做 dio stu SAS

沙发
ebertzheng 发表于 2023-4-9 22:22:41
首先将800的对应数字1,1100的对应数字2,1400的对应数字3,1700的对应数字4,以此类推。然后将800的观测单独拿出来,放在tb1里面,将1100的观测单独拿出来放在tb2里面,以此类推。

也就是说,要用宏循环的方法,以此将不同x的观测拿出来,放在表格tb&i.  中(i=1, 2, 3, 4,........)。然后对于tb&i.  ,运行如下程序:

proc surveyselect data=tb&i.  method=sys
n=1/*表示只抽取一个观测*/
seed=1/*种子设为1,需是整数。设为0则每次取出的观测不同*/
out=b&i.;
run;
data b&i.;
  set b&i.;
  di_ji_zu=&i.;
  run;

最后再用宏循环将各个 b&i.  纵向合并。

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-27 12:09