前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SAS-可信区间的输出...

SAS-可信区间的输出...

作者头像
Setup
发布2019-10-20 14:34:15
2.6K0
发布2019-10-20 14:34:15
举报

最近小编突然发现proc freq过程步真的可以做好多事...今天打算来分享一段如何用SAS中的Proc freq过程步输出二项分布的可信区间的SAS程序...

可信区间的输出

关于二项分布的可信区间的输出在临床统计报告编程中经常会用到...小编不是统计专业也不是医学专业的,就不班门弄斧了的介绍理论知识了...就直接来看看如何用..

先随便制造一点数据

弄俩个组别、然后是否发生不良事件、对应的频数

如下图所示

有了数据后,接着就分别输出俩个组别发生不良事件的可信区间...

程序的实现方式其实很简单

在freq过程步中有参数可以控制可信区间的输出

binomial(cl= ) alpha=

这里的CL=可以选择输出的置信类型

alpha=则可以选择可信度

(alpha默认值是0.05,输出的是95%可信区间)

代码语言:javascript
复制
ods exclude all;
ods listing close;
ods output   binomialcls=want;
proc sort data=have  out=have  sortseq=linguistic(numeric_collation=on);by  group  ;quit;
proc freq data=have  ;
  by   group ;
  tables  aeyn/ missprint nowarn binomial(cl=ALL)   ALPHA=0.05 ;
  weight num;
run;
ods listing;
ods exclude none;

上段代码输出出来的结果就如下了

这里使用了ods output会将结果输出到输出want中

关于统计过程步中统计量如何输出到数据集中

可以见小编的历史文章

点击跳转SAS-那些统计过程步的统计量的输出...

如果只想输出上图中标记红色的上下限的话

只需将 binomial(cl=ALL) 中的ALL改成 EXACT

就能有下面的效果

至于其他的几个类型的输出可见下图

结果是鼓捣出来了,那么结果对吗?想要的是发生不良事件(也就是AEYN=是)的置信区间,上面看起来怎么是怪怪的...明显不是预期的结果,这里输出的是未发生不良事件(AEYN=否)的置信区间..那么我是用1-置信区间得到AEYN=是的置信区间呢,还是有其他方式可以控制呢...是有其他方式的...只需一个参数(LEVEL=)

结果如下

关于LEVEL值的选取

根据小编浅薄的经验再加上有道词典对SASHELP粗略的翻译...在freq过程步的计算过程中,会对AEYN的值进行一个排序(所以在此之前你给数据集中的AEYN这个变量不管是升序还是降序都是没有作用的...),“是”的首字母是S,“否”的首字母是F,这个时候“否”就会排到前面成为第一个水平,“是”就会排到第二个水平。如果不加LEVEL这个选项程序则会默认LEVEL=1。下面附上SASHELP的解释..

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-10-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 SAS程序分享号号号 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档