大きなデータ フレームから、数値データの行を抽出し、ベクトルとして保存しました。一部の値が欠落しており、NA とマークされています。欠損値を行平均で代入したい。
ありがとう
x
あなたのベクトルをしましょう:
x <- c(NA,0,2,0,2,NA,NA,NA,0,2)
ifelse(is.na(x), mean(x, na.rm = TRUE), x)
# [1] 1 0 2 0 2 1 1 1 0 2
または、元のベクトルを気にしない場合は、直接変更できます。
x[is.na(x)] <- mean(x, na.rm = TRUE)
これを使って:
filter <- is.na(myVec)
myVec[filter] <- colMeans(myDF[,filter], na.rm=TRUE)
myVec
ベクトルはどこにありmyDF
、data.frame はどこにありますか。