在数据上运行mclustICL
(R
包mclust 5.3
)时会发生错误:
data <- c(-0.485152666666667, -0.457841666666667, -0.457841666666667,
-0.457841666666667, -0.457841666666667, -0.457841666666667, -0.457841666666667,
-0.457841666666667)
> mclustICL(data, modelNames = "V")
fitting ...
|=======================================================================================================| 100%
Error in if (sum((out$parameters$pro - colMeans(out$z))^2) > sqrt(.Machine$double.eps)) { :
missing value where TRUE/FALSE needed
四舍五入解决了它:
> mclustICL(round(data,5), modelNames = "V") # no error
但是我需要mclustICL
在其他数据示例上使用函数,然后舍入不仅没有帮助,而且该函数仅在我不使用 round 时才有效,并且在我这样做时会抛出相同的错误:
data <- c(-0.241992333333333, -0.287035333333333, -0.33378, -0.272269333333333,
-0.241992333333333, -0.287035333333333, -0.241992333333333, -0.241992333333333,
-0.241992333333333, -0.287311, -0.287311, -0.287035333333333)
> mclustICL(data, modelNames = "V")# no error
> mclustICL(round(data,5), modelNames = "V")fitting ...
|=======================================================================================================| 100%
Error in if (sum((out$parameters$pro - colMeans(out$z))^2) > sqrt(.Machine$double.eps)) { :
missing value where TRUE/FALSE needed
我应该怎么做才能在两个数据上使用该函数以及为什么会发生这种行为?提前致谢!