0

我无法适应X一个共同的发行版,所以目前我只有X ~ ecdf(sample_data).

如何计算sum(X1 + ... + Xn), 给定的经验分布n?X1 到 Xn 是独立同分布的。

4

2 回答 2

1

n要估计该总和的分布,您可以使用替换重复抽样(然后取总和)sample_data。(就像 ecdf 一样,sample()在 的每个元素上放置相等的概率质量sample_data,因此您不需要将计算ecdf(sample_data)作为中间步骤。)

# Create some example data
sample_data <- runif(100)

n <- 10
X <- replicate(1000, sum(sample(sample_data, size=n, replace=TRUE)))

# Plot the estimated distribution of the sum of n variates.
hist(X, breaks=40, col="grey", main=expression(sum(x[i], i==1, n)))
box(bty="l")

# Plot the ecdf of the sum
plot(ecdf(X))
于 2012-05-18T12:23:02.593 回答
0

首先,概括和简化:求解阶跃函数 CDF X 和 Y,独立但不同分布。对于每一步跳转 x i和每一步跳转 y i ,在 X + Y 的 CDF 中都会在 x i +y i处有对应的一步跳转,所以 X + Y 的 CDF 将由列表表征:

sorted(x + y for x in X for y in Y)

这意味着如果 X 的 CDF 中有 k 个点,则(X 1 + ... + X n ) 中将有 k n个。我们可以通过再次丢弃除 k 之外的所有内容,在最后将其减少到一个可管理的数字,但显然中间计算在时间和空间上将是昂贵的。

另外,请注意,即使原始 CDF 是 X 的 ECDF,结果也不会是 (X 1 + ... + X n ) 的 ECDF,即使您保留所有 k n个点。

总之,使用 Josh 的解决方案。

于 2012-05-18T13:02:07.600 回答