与我认为是一个很好的答案的其他答案不同,我认为线性回归足以满足您的确切情况。作为原则问题,由于结果的硬性界限,它可能是错误的,但是您的数据图表明了为什么它是一个足够好的近似值。在这两个极端情况下,您的数据的平均值与结果的极端情况相距甚远,因此,没有关系的弯曲或弯曲以尊重原始结果的界限。简而言之,您的预测似乎与结果呈线性相关,这是线性回归的主要要求。
如果上述情况属实,那么线性模型的优点是:
- 易于解释,您发布的系数在到达时有意义
- 如果有人关心的话,可以从回归标准差中获得一个相对简单的围绕拟合线的变异性度量。
我从探索数据开始:
dat <- read.csv("Estimated probability of winning vs Actual proportion of score - Sheet1.csv")
names(dat) <- c("x", "y")
ggplot(dat, aes(x, y)) + geom_point(shape = 1) + theme_bw() +
geom_smooth() + geom_smooth(method = "lm", se = FALSE, col = "red")

蓝线是广义的加法模型更平滑。红线是线性拟合。人们可以观察到末端的一些弯曲,但向外而不是向内。所以你的预测与结果并不完全线性相关。由于您有足够的数据点,因此这可能不是任意的。
的 Logit 变换y在这里不太可能有帮助,相反,logit 转换x因为它向外弯曲。我们可以缩小中间x有点值并扩大更大x价值观:
ggplot(dat, aes(log(x / (1 - x)), y)) + geom_point(shape = 1) + theme_bw() +
geom_smooth() + geom_smooth(method = "lm", se = FALSE, col = "red")

这一次,线性拟合非常接近平滑拟合,但在尾部不是很好,但对于大多数应用来说已经足够了。同方差是一个合理的假设。
所以选择的回归模型是:
coef(summary(fit.lm <- lm(y ~ log(x / (1 - x)), dat)))
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.50116288 0.002897402 172.96973 0.000000e+00
log(x/(1 - x)) 0.05446613 0.002045560 26.62652 6.846189e-124
当预测的对数赔率为零时,我们预计获胜概率约为 50%。高出对数,预期高出 5%。如上面第二张图所示,对数赔率在任一方向上都不会超过 5。所以所有的预测值y被限制在大约 25% 和 75% 之间。回归效果足够清晰,并且样本量足够大,我相信该推论总体上不会产生误导。总是有更好的精度的替代品。
我们还可以了解拟合线的误差。
sigma(fit.lm)
[1] 0.09958555
给定一个预测,大约 95% 的值应该在大约±20%. 添加到最小和最大预测值时的间隔y也在界限之内。
线性方法的理由是它的简单性和在这个特定应用中的充分性。