【发布时间】:2016-01-04 17:56:57
【问题描述】:
规格:旧 Solaris 安装上的 SAS 9.3。在手机上发表评论;如果我的格式有问题,我很抱歉。
我有一些较大的数据集(n~=30k 患者),我想运行一些 2x2 表并为它们获取卡方 p 值。不幸的是,当您询问 2x2 表的卡方统计数据时,SAS 以其无限的智慧决定将 Fisher 精确检验作为默认输出的一部分。由于样本量大,SAS 在尝试 Fisher 精确检验时会抛出警告:
“警告:对于此样本量,无法以足够的精度计算 Fisher 精确检验。”
(如果 SAS 研究所的任何人正在阅读:朋友们,我没有要求进行该测试是有原因的!)
我需要这个警告不要发生,因为我将这个 SAS 调用嵌入到一个 GNU make 脚本中,并且 make 将在出现警告时停止。我很确定 NOWARN 只会抑制“卡方可能不准确,单元格大小这么小”警告,而不是这个警告。在这种情况下,有没有办法抑制费舍尔的精确测试本身?我也尝试过手动计算卡方,但我需要一个包含整体 N 的输出数据集,并且我不能使用不需要除 N 之外的任何统计数据的 OUTPUT 语句。
编辑:这是一个导致问题的表,{Nij} 向上取整。
var1,var2: N
-------------------
P,X: 10000
P,Y: 3600
Q,X: 13000
Q,Y: 1000
【问题讨论】:
-
你能发布你的代码吗?当我要求进行 CHISQ 时,我也没有得到 Fisher 测试,所以我想知道您是如何要求进行 CHISQ 测试的。
-
@Reeza 实际上,它会产生它 - 但据我所知,仅适用于 2x2 正方形。
-
我相信这是基于单元格的数量,而不是样本量。如果它足够聪明地键入样本量,我希望它不会在我的情况下这样做。
-
@ErinMcJ 是的 - 在我发布评论(并在您制作评论时进行编辑)之后,我意识到这一点。
-
@ErinMcJ 您能否发布您的 proc freq 表,以便我们生成示例数据来复制您的问题。我无法生成 1000000 样本大小的警告,但我记得之前也遇到过 20K 样本大小的警告。
标签: sas