这里的答案很好,+1。我只是想展示在极端情况下,这种效果在漏斗图中的表现。下面我将一个小效应模拟为,并在 2 到 2000 个观测值之间抽取样本。N(.01,.1)
制度下,图中的灰点不会公布。灰线是效应大小对样本大小的回归,包括“不良 p 值”研究,而红色则排除了这些。黑线显示真实效果。p<.05
正如你所看到的,在发表偏倚的情况下,小型研究倾向于高估效应量,而大型研究报告的效应量更接近真相。
set.seed(20-02-19)
n_studies <- 1000
sample_size <- sample(2:2000, n_studies, replace=T)
studies <- plyr::aaply(sample_size, 1, function(size) {
dat <- rnorm(size, mean = .01, sd = .1)
c(effect_size=mean(dat), p_value=t.test(dat)$p.value)
})
studies <- cbind(studies, sample_size=log(sample_size))
include <- studies[, "p_value"] < .05
plot(studies[, "sample_size"], studies[, "effect_size"],
xlab = "log(sample size)", ylab="effect size",
col=ifelse(include, "black", "grey"), pch=20)
lines(lowess(x = studies[, "sample_size"], studies[, "effect_size"]), col="grey", lwd=2)
lines(lowess(x = studies[include, "sample_size"], studies[include, "effect_size"]), col="red", lwd=2)
abline(h=.01)
由reprex 包(v0.2.1)于 2019 年 2 月 20 日创建