尽管没有缺失值,但仍获得NA / NaN错误消息(使用R:tidyLPA)

时间:2019-06-25 14:57:06

标签: r na

我在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),]

这对我来说从来没有发生过,在其他任何软件包中都没有发现过。我不确定该如何解决,仅查看数据集就无法立即确定为什么一个数据集有效而另一个数据集无效的原因。

1 个答案:

答案 0 :(得分:0)

我在这里回答自己的问题, 该问题来自single_imputation() %>%命令。 如Github所述,当缺少值时使用该命令。由于我删除了所有缺少的值,因此该命令不是必需的,实际上会导致错误!

我将其删除后就拥有了:

data[1:100, ] %>%
  select(V1, V2, V3, V4) %>%
  estimate_profiles(3)

代码运行正常!