计算对应于离散变量的高斯拟合

机器算法验证 配件
2022-04-18 08:11:06

我收集了离散概率分布的数据,并且我有对(值,概率)。

Value    Probability
 90      0,0033
125      0.0204
180      0.0847
250      0.2516
355      0.4653
500      0.175
710      0.0015

我被要求计算该数据的高斯拟合,但我遇到了麻烦。是否有可能(并且有意义)在其上拟合高斯分布?

我试图通过计算数据的均值 ( 334) 和标准差 ( 100) 来构建相应的高斯分布,但当然,它不起作用。

高斯密度函数值与连续值有关,而我的概率是连续的。

我想我的离散值太少而无法计算高斯分布,但我并不是很喜欢统计数据,所以我不确定,我想和你再次确认我没有遗漏任何东西。

1个回答

离散概率分布的“高斯拟合”在统计应用中几乎没有意义,但在数学上几乎可以完美拟合这些有序对只需找到累积高斯\Phi(x ; ,与数据非常吻合。ms

Φ(x;m,s)=12πs2xexp((tm)2/s2)dt

为了说明计算,这里是一个最小二乘拟合的例子(在 R 中)。因为概率的总和并不完全为,所以它将它们标准化为总和为单位。1

# The data
x <- c(90, 125, 180, 250, 355, 500, 710)
p <- c(0.0033, 0.0204, 0.0847, 0.2516, 0.4653, 0.1750, 0.0015)

# Standardize the cumulative probabilities
prob <- cumsum(p); prob <- prob / prob[7]

# Compute sum of squared residuals to a fit
f <- function(q) {
  res <- pnorm(x, q[1], q[2]) - prob
  sum(res * res)
}

# Find the least squares fit
coeff <-(fit <- nlm(f, c(334, 100)))$estimate

# Plot the fit
plot(x, prob)
curve(pnorm(x, coeff[1], coeff[2]), add=TRUE)

阴谋

最佳值为 ,m279.5s80.5