请选择 进入手机版 | 继续访问电脑版
楼主: crazygoing
26262 39

[程序分享] 病例对照、匹配(配对)抽样 SAS 程序(原创) [推广有奖]

zhusd 发表于 2014-4-29 14:13:28 |显示全部楼层 |坛友微信交流群
我有一个数据库,暂且也命名为js,含有唯一变量ID,需要匹配的变量 是gender和age,case是定义变量,1是病例,0是对照。抽样要求gender相同,age相差不超过2岁,求楼主帮忙,不甚感谢

使用道具

crazygoing 发表于 2014-4-29 14:37:11 |显示全部楼层 |坛友微信交流群
代码第四行 pp=compress(school||grade||class);  更改为pp=gender; 即可

使用道具

zhusd 发表于 2014-4-29 14:50:47 |显示全部楼层 |坛友微信交流群
crazygoing 发表于 2014-4-29 14:37
代码第四行 pp=compress(school||grade||class);  更改为pp=gender; 即可
试过了,跑出来的结果不对,不是1:1,楼主这个程序跑你自己的数据好像也不太对呢

使用道具

crazygoing 发表于 2014-4-29 15:56:27 |显示全部楼层 |坛友微信交流群
zhusd 发表于 2014-4-29 14:50
试过了,跑出来的结果不对,不是1:1,楼主这个程序跑你自己的数据好像也不太对呢
不知道你的sas版本,我的是sas9.2。 程序运行我的模拟数据没有问题啊;
日志:
QQ截图20140429155334.png

生产的抽样文件:
QQ截图20140xxxxx.png

使用道具

jeozu 发表于 2014-4-29 16:27:46 |显示全部楼层 |坛友微信交流群
zhusd 发表于 2014-4-29 13:54
楼主的意思是把这一段程序加进去吗?
添加
  1.   proc surveyselect data=final out=matched method=srs n=1;
  2.     STRATA treated;
  3.     run;
复制代码
就可以了。。

使用道具

crazygoing 发表于 2014-4-29 16:51:12 |显示全部楼层 |坛友微信交流群
jeozu 发表于 2014-4-29 16:27
添加就可以了。。
这样不行。

使用道具

zhusd 发表于 2014-4-29 17:03:52 |显示全部楼层 |坛友微信交流群
crazygoing 发表于 2014-4-29 15:56
不知道你的sas版本,我的是sas9.2。 程序运行我的模拟数据没有问题啊;
日志:
NOTE: 有 970 个从数据集 WORK.A_CASE 读取的观测。
NOTE: 有 745 个从数据集 WORK.SAMPLE 读取的观测。
NOTE: 数据集 WORK.HB 有 1715 个观测和 5 个变量。
NOTE: “DATA 语句”所用时间(总处理时间):
      实际时间          0.01 秒
      CPU 时间          0.01 秒

使用道具

zhusd 发表于 2014-4-29 17:04:43 |显示全部楼层 |坛友微信交流群
crazygoing 发表于 2014-4-29 15:56
不知道你的sas版本,我的是sas9.2。 程序运行我的模拟数据没有问题啊;
日志:
NOTE: 有 970 个从数据集 WORK.A_CASE 读取的观测。
NOTE: 有 745 个从数据集 WORK.SAMPLE 读取的观测。
NOTE: 数据集 WORK.HB 有 1715 个观测和 5 个变量。
NOTE: “DATA 语句”所用时间(总处理时间):
      实际时间          0.01 秒
      CPU 时间          0.01 秒



病例和对照不是1:1

使用道具

crazygoing 发表于 2014-4-29 17:06:04 |显示全部楼层 |坛友微信交流群
zhusd 发表于 2014-4-29 17:04
NOTE: 有 970 个从数据集 WORK.A_CASE 读取的观测。
NOTE: 有 745 个从数据集 WORK.SAMPLE 读取的观测。 ...
那就是有的没有匹配上。  我说了我的这个程序是有缺陷的,没有考虑未匹配的情况。

使用道具

zhusd 发表于 2014-4-29 18:08:43 |显示全部楼层 |坛友微信交流群
crazygoing 发表于 2014-4-29 17:06
那就是有的没有匹配上。  我说了我的这个程序是有缺陷的,没有考虑未匹配的情况。
那能不能加个语句把匹配不上的删了呢?

使用道具

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

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

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

GMT+8, 2024-3-28 20:26