在测试数据集上运行mclust时,出现以下错误:
cdensEEV中的错误(数据=数据,对数= TRUE,参数=参数,: 外部函数调用中的NA / NaN / Inf(arg 1) 另外:警告消息: 在cdensEEV(data = data,logarithm = TRUE,parameters = parameters,: 强制引入的NAs
我的代码如下:
library(ISLR)
attach(Auto)
library(mclust)
library(MASS)
library(class)
attach(Weekly)
Auto$mpg01 <- ifelse(Auto$mpg > median(Auto$mpg),1,0)
odd <- seq(from = 1, to = nrow(Auto), by = 2)
even <- seq(from = 2, to = nrow(Auto), by = 2)
X.train <- Auto[odd, -10]
Class.train <- Auto[odd, 10]
X.test <- Auto[even, -10]
Class.test <- Auto[even, 10]
AutoMclustDA <- MclustDA(X.train, Class.train)
summary(AutoMclustDA, parameters = TRUE)
summary(AutoMclustDA, newdata = X.test, newclass = Class.test)
运行初始摘要时,一切正常,但是当我运行第二个摘要时,尤其是newclass = Class.test部分,出现该错误。我在数据集中没有任何NA值,而当我之前在“每周”数据集中进行此操作时,我没有任何问题。
有人可以帮忙吗?预先谢谢你。
亚当
答案 0 :(得分:0)
因此,与其说是解决方法,不如说是一个答案。数据集中的变量之一是车辆的名称,因此当我删除该变量时,它实际上与分析没有关系,并相应地调整了火车和测试符号(例如X.train <-Auto [,- 9]),摘要适用于以上代码中的MclustDA,也适用于您添加modelType =“ EDDA”的情况。