私はRを初めて使用しますがimpute.knn()
、6つの最近傍を使用してfrom library(impute)を使用して、大規模なマイクロアレイデータセットの欠損値を推定しようとしています。
次に例を示します。
seq1 <- seq(1:12)
mat1 <- matrix(seq1, 3)
mat1[2,2] <- "NA"
impute.knn(mat1, k=6)
次のエラーが表示されます。
Error in knnimp.internal(x, k, imiss, irmiss, p, n, maxp = maxp) :
NA/NaN/Inf in foreign function call (arg 1)
In addition: Warning message:
In storage.mode(x) <- "double" : NAs introduced by coercion
私も次のことを試しました:
impute.knn(mat1[2,2], k=6)
次のエラーが表示されます。
Error in rep(1, p) : invalid 'times' argument
私のgoogle-fuは今日オフになっています。このエラーが発生する理由について何か提案はありますか?
編集:私は試しました
mat1[2,2] <- NA
ジェームズが提案したように、しかし、セグメンテーション違反が発生します。使用する
replace(mat1, mat1[2,2], NA)
どちらも役に立ちません。他の提案はありますか?