3

マウスを呼び出すときに「2l.norm」メソッドを指定した後、NA が 1 つしか含まれていない変数のエラー メッセージに出くわしました。これらの変数の欠落データが非常に少ないことを考えると、これは非常に小さな問題であることがわかります。ただし、これらのデータ構造も考慮に入れることはエレガントです。

すべての人がアクセスできるデータベースである ChickWeight データセットを使用して状況を再現しました。この問題は、手順の実装におけるエラーの結果である可能性があることも認識しているため、そのような場合はお知らせください.

ChickWeight[1:20, ]
dim(ChickWeight)
sum(is.na(ChickWeight)) #contains no NAs
ChickWeight$weight[12] <- NA # add 1 NA
ChickWeight$constant <- 1 #add a constant
ChickWeight$Chick <- as.numeric(levels(ChickWeight$Chick)[ChickWeight$Chick]) #class variable has to be an integer

ini <- mice(ChickWeight, maxit = 0)
pred <- ini$predictorMatrix
pred["weight", ] <- c(0, 2, -2, 1, 2)
method <- ini$method
method["weight"] <- "2l.norm"
imputation <- mice(ChickWeight, m = 5, maxit = 5, pred = pred, method = method)

最後のコマンドの結果は次のとおりです。

[<-.data.frame( 、 、 i のエラー*tmp*、値 = c(37.3233463394145、159.862324738397 : 置換は 2 行、データは 1 行)

NAを1つ追加すると、問題が解決します

ChickWeight$weight[13] <- NA # add another NA
imputation <- mice(ChickWeight, m = 5, maxit = 5, pred = pred, method = method)

誰がエラーの原因を知っていますか?

4

1 に答える 1