我正在寻找基于一系列值的平均值,每个值都有相关的误差。我发现
rmeta
包中的 meta.summaries 似乎工作得很好,但我对输入值的错误只是上限和下限,而不是标准误差测量,来自使用 epi.2by2
。 Meta.summaries
需要一个标准错误。
有没有办法让
meta.summaries
使用上限和下限,或者 epi.2by2
生成 s.e?
attach(DATA)
m <- summary(meta.summaries(RR,SE), conf.level = 0.95)
也许您太依赖软件包了?从维基百科的奇数比页面,我可以读到:
对数优势比的分布近似正态分布:
L ~ N( log(OR), s^2 )
...其中 s 可以近似为:
SE=sqrt(1 / n_11 + 1/n_01 + 1/n_00 + 1/n_10)
(其中 n_11 是接触药物的治愈人数,n_10 是未接触药物的治愈人数,等等)因此,您可以非常轻松地计算标准误差。假设您将所有观察结果打包为一个数据集:
n <- 10 # number of odd-ratios
counts <- sample(20:100, replace = TRUE, size=4*n) # fake counts data
counts <- matrix(counts, cols=4) # one line = one experiment = one OR = 4
...然后您可以计算标准误差如下:
se <- sqrt(rowSums(1/counts))
请注意:
这是渐近近似,如果任何细胞计数非常小,则不会给出有意义的结果。
...更一般地说,平均奇数比听起来很可疑,至少对我来说是这样。如果您有原始观察结果,那么您可以简单地将所有计数放在一起。如果你不这样做,那么你就会在这个过程中过度重视小型研究。我没有详细调查,但似乎对此事有很多讨论:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5352535/。您还可以在 CrossValidated(用于统计的 StackOverFlow)上查看here所说的内容。