0
次のことを行っているRの関数が必要です。 は、私はいくつかのデータを持つ行列を持つRすべての列をNAで取得
mydata <- data.frame (matrix(c(1,2,3,NA,2,3,NA,NA,2), 3,3))
mydata
X1 X2 X3
1 1 NA NA
2 2 2 NA
3 3 3 2
私は列または1でNAがある場合は、列のいずれかのNAがあれば、この行列のすべての列をチェックし、0を格納するベクトルを作成したいん列にNAがない場合。
したがって、列X1を確認します。NAがこの列にある場合は、ベクトルに0を書き込んでください。書き込まない場合は、ベクトルに1を書き込んでください。次に、次の列を確認してください。ベクトルMYDATA確認後
は、私はNAを持っているカラム名を取得
colnames(mydata)[colSums(is.na(mydata)) > 0]
この
(1 0 0)
のようになります。しかし、この関数を使ってベクトルを作成するにはどうすればよいですか?
'sapply(mydataに、関数(x)が!どんな(is.na(X)))' ' – jogo
ifelseでバイナリに論理
matrix
にcolSums
から論理ベクトルを強制することができます(colSums(is.na(mydata))== 0,1,0) ' – Sotosすごい!!これは私が必要とするものを正確に実行しています – user2348157