提问人:vtuna 提问时间:11/17/2023 更新时间:11/17/2023 访问量:33
从截断数据拟合分布
Fit distribution from a truncated data
问:
我正在尝试找到适合截断数据的分布参数。
这里有一个类似的未答复的帖子:将统计分布拟合到截断的数据
# Generate truncated data, x ~ N(3, 1) and x <= 2
N <- 10000
trunc <- rnorm(N, mean = 3, sd = 1)
trunc <- trunc[which(trunc <= 2)]
print(fitdistr(trunc, densfun = 'normal'))
> mean sd
> 1.479185403 0.426895843
> (0.010695819) (0.007563086) # does not return mean 3 and sd 1
上面的代码生成了一个插图,其中 x 是从 N(3, 1) 绘制的,但在 2 以上被截断。我可以用 或 恢复原来的正态分布吗?fitdistr
fitdistrplus
答:
1赞
Friede
11/17/2023
#1
生成截断数据 x ~ N(3, 1) 和 x <= 2
情况正好相反。 就是为此而生的。有关详细信息,请查看文档,例如 .{extraDistr}
?rtnorm
set.seed(1L)
library(extraDistr)
x <- rtnorm(1e5, 3L, 1L, b = 2L)
hist(x, 100, freq = FALSE)
我正在尝试找到适合截断数据的分布参数
然后你可以用@jdblood94的这个答案。
> tnorm.mle(x = x, a = -Inf, b = 2L)
mu sigma
2.9575804 0.9877055
评论