THE RMSE を計算する平均関数にはna.rm
引数があり、次のように使用できます。
RMSE <- function (pred,obs,na.rm=FALSE){
sqrt(mean((pred - obs)^2, na.rm = na.rm))
}
ほとんどの場合、na.or.complete オプションを使用することは、元のペアから NA 値を削除することと同等であるため、na.rm 引数を使用して na.or.complete の動作を模倣できます。例えば :
swM <- swiss[,1:2]
swM[1,2] <- NA
swM[1,1] <- NA
identical(cor(swM, use = "na.or.complete"),
cor(na.exclude(swM), use = "all"))
TRUE
RMSEあり
swM[1,2] <- NA
swM[1,1] <- NA
identical(RMSE(swM[,1],swM[,2],na.rm=T),
RMSE(swM[,1],swM[,2],na.rm=F))
FALSE
EDITは非常に小さい値を NA に設定します
データをどのように保管しているかわかりません。しかし、変数 x を持つ data.table があると仮定します。次のようなことができます:
dat$x[dat$x <= -3.4e+38] <- NA