我们有一个数据集 d3。
时间 | MV |
---|---|
1 | 0 |
2 | 0 |
3 | 0,3 |
等等。在 0 到 1 之间有更多的数据点。我们想要拟合 beta 分布,但我们发现我们应该尝试拟合零膨胀的 beta 分布,因为我们的数据包含零。
但我们真的不知道如何做到这一点。对于这种分布,如果可能,我们首先尝试在散点图中拟合一条线。有人可以在正确的方向上推动我们吗?我们已经找到了 gamlss 包,但不知道如何以正确的方式实现它谢谢你,2 个苦苦挣扎的学生
我们有一个数据集 d3。
时间 | MV |
---|---|
1 | 0 |
2 | 0 |
3 | 0,3 |
等等。在 0 到 1 之间有更多的数据点。我们想要拟合 beta 分布,但我们发现我们应该尝试拟合零膨胀的 beta 分布,因为我们的数据包含零。
但我们真的不知道如何做到这一点。对于这种分布,如果可能,我们首先尝试在散点图中拟合一条线。有人可以在正确的方向上推动我们吗?我们已经找到了 gamlss 包,但不知道如何以正确的方式实现它谢谢你,2 个苦苦挣扎的学生
将数据存储在向量中。rBEZI
在这里,我们使用从(随机 Beta 零膨胀)生成的示例数据,x
其中 mu=.5、sigma=1 和 nu=.1,大小为 10000。现在使用公式拟合数据x~1
。如果您不知道它们可能是什么,则指定起始值是可选的,但在这里我们知道它们是什么,因此可以将起始值指定为它们的实际值。不要忘记将 指定family
为“BEZI”,您可以使用 访问拟合系数fitted
。最后,您可以绘制数据和拟合曲线以查看它们是否匹配。
library(gamlss)
x=rBEZI(10000, .5, 1, .1)
m=gamlss(x~1, mu.start=.5, sigma.start=1, nu.start=.1, family="BEZI")
fitted(m, "mu")[1]
0.5015543
fitted(m, "sigma")[1]
1.008976
fitted(m, "nu")[1]
0.0997
plotBEZI(fitted(m, "mu")[1], fitted(m, "sigma")[1], fitted(m, "nu")[1])
hist(x, freq=FALSE, add=TRUE)