これらのデータを使用してlmeモデルを実行しようとしています。
tot_nochc=runif(10,1,15)
cor_partner=factor(c(1,1,0,1,0,0,0,0,1,0))
age=runif(10,18,75)
agecu=age^3
day=factor(c(1,2,2,3,3,NA,NA,4,4,4))
dt=as.data.frame(cbind(tot_nochc,cor_partner,agecu,day))
attach(dt)
corpart.lme.1=lme(tot_nochc~cor_partner+agecu+cor_partner *agecu,
random = ~cor_partner+agecu+cor_partner *agecu |day,
na.exclude(day))
私はこのエラーコードを受け取ります:
Na.fail.default(list(cor_partner = c(1L、1L、2L、1L、1L、1L、のエラー:オブジェクトに値がありません
フォーラムにも同様の質問があることを知っています。ただし、私の場合:
Na.actionを使用してこれらのNA値を除外できますが、関数が欠損値を読み取っている理由を知りたい-データに何が起こっているかを正確に理解するためです。
tl; drデータフレーム全体でna.exclude()
(または何でも)を一度に使用して、残りの観測値が変数間で一致するようにする必要があります...
set.seed(101)
tot_nochc=runif(10,1,15)
cor_partner=factor(c(1,1,0,1,0,0,0,0,1,0))
age=runif(10,18,75)
agecu=age^3
day=factor(c(1,2,2,3,3,NA,NA,4,4,4))
## use data.frame() -- *DON'T* cbind() first
dt=data.frame(tot_nochc,cor_partner,agecu,day)
## DON'T attach(dt) ...
今すぐ試してください:
library(nlme)
corpart.lme.1=lme(tot_nochc~cor_partner+agecu+cor_partner *agecu,
random = ~cor_partner+agecu+cor_partner *agecu |day,
data=dt,
na.action=na.exclude)
収束エラーと警告が表示されますが、それは、コードに固有の問題ではなく、十分な情報のない小さな構成データセットを使用しているからだと思います。
randomForest
パッケージにはna.roughfix
関数 "中央値/モードによる欠損値の代入"
次のように使用できます
fit_rf<-randomForest(store~.,
data=store_train,
importance=TRUE,
prOximity=TRUE,
na.action=na.roughfix)
データにNaまたは欠損値が含まれている場合、これを使用して、データセット内とまったく同じデータを渡すことができます。
rf<-randomForest(target~.,data=train, na.action = na.roughfix)