データフレームの選択された列にNA(欠損)値を含む行のサブセット 質問する

データフレームの選択された列にNA(欠損)値を含む行のサブセット 質問する

CSV ファイルからのデータ フレームがあります。データ フレームには、DF観測値を含む列と、測定が行われた日付を含む列 ( VaR2) があります。日付が記録されていない場合、CSV ファイルには欠損データを表す値 が含まれますNA

Var1  Var2 
10    2010/01/01
20    NA
30    2010/03/01

subset コマンドを使用して、列 ( ) の値new_DFを持つ行のみを含む新しいデータ フレームを定義します。この例では、行 2 のみが新しい に含まれます。NA'VaR2DF

コマンド

new_DF<-subset(DF, DF$Var2=="NA") 

動作しない場合、結果のデータ フレームには行エントリが含まれません。

元の CSV ファイルで値がNAと交換されている場合NULL、同じコマンドで目的の結果が生成されます。

new_DF <- subset(DF, DF$Var2=="NULL")

文字列の値NAが元の CSV ファイルで提供されている場合、このメソッドを機能させるにはどうすればよいですか?

ベストアンサー1

欠損値をテストするために =='NA' を使用しないでください。is.na()代わりに を使用してください。次のようにすればうまくいきます:

new_DF <- DF[rowSums(is.na(DF)) > 0,]

特定の列をチェックしたい場合は、

new_DF <- DF[is.na(DF$Var),]

NA文字値がある場合は、まず

Df[Df=='NA'] <- NA

欠損値に置き換えます。

おすすめ記事