【发布时间】:2019-06-25 23:38:59
【问题描述】:
我在 R 中使用 tidyLPA。我遵循了here 给出的示例。他们给出的示例代码如下:
library(tidyLPA)
library(dplyr)
library(mclust)
data(pisaUSA15)
pisaUSA15[1:100, ] %>%
select(broad_interest, enjoyment, self_efficacy) %>%
single_imputation() %>%
estimate_profiles(3)
这运行良好并给我以下结果:
tidyLPA analysis using mclust:
Model Classes AIC BIC Entropy prob_min prob_max n_min n_max BLRT_p
1 3 630.957 667.430 0.885 0.903 0.973 0.130 0.680 0.010
但是,当我使用以下代码使用自己的数据运行它时:
data[1:100, ] %>%
select(V1, V2, V3, V4) %>%
single_imputation() %>%
estimate_profiles(3)
我收到以下错误消息:
Error in mdpwst[i]:mdpwfin[i] : NA/NaN argument
我很困惑为什么我在删除所有缺失值的观察时收到一条 NA/NaN 消息:
data = data[complete.cases(data),]
这在我使用任何其他软件包时从未发生过,并且在 stackoverflow 上筛选类似的问题并没有提供任何答案。我不确定如何解决这个问题,仅查看数据集就无法立即识别出为什么一个数据集有效而另一个无效的原因。
【问题讨论】:
-
你能否展示一个给出错误的可重现的小例子
-
如果没有可重复的示例就无法判断,但可能在删除 NA 后,您用作
data[1:100, ]的数据框没有 100 行,R 默认使用 NA 完成它。 -
刚刚更新了前 100 行数据。整个数据集有超过 1000 个观测值,因此默认情况下不应使用 NA 完成它。
-
找出错误信息的原因!在下面回答了我自己的问题。