0

欠損データは、テキスト ファイルでは 9999.00 、 9999.0 、および 9999.000 として表されます。私が指定した場合:

    Rcmdr->data->import->missing data indicator  as  9999,nothing will be assigned to NA.

   but when I assigned to 9999.0  then only the values of 9999.0 are assigned to NA.

Rcmdr内でNAに異なる値を割り当てる方法について何か考えはありますか? 追加されたコードは次のとおりです。

      Dataset <- 
    read.table("C:/Users/BRSa12002_L4_d.txt", 
     header=TRUE, sep=",", na.strings="-9999.00", dec=".", strip.white=TRUE)
4

2 に答える 2

1

ここから?read.table、引数 na.strings がベクトルを取ることがわかります。したがって、これを使用して、いくつかの異なる値を NA として割り当てることができます。

Dataset <- read.table("C:/Users/BRSa12002_L4_d.txt", 
               header=TRUE, sep=",", 
               na.strings=c("-9999.00","-9999.0","-9999"), 
               dec=".", strip.white=TRUE)
于 2012-06-19T09:41:48.723 に答える
1

Rcmdr は単なるメニュー GUI であるため、おそらく標準入力関数を使用します。このread.table関数は、値を文字列として処理します。read.table関数に という名前のパラメーターを指定しますna.strings。数値的に同じかどうかを確認するために入力を評価することを真剣に疑っています。デフォルトの文字列は「NA」です。私は Rcmdr のユーザーではありませんが、その関数に "9999" と "9999.0" の両方を指定すると、希望する動作が得られると予測しています。本当の問題は、入力データ ストリームに何があるかです。あなたはまだその質問を説明していません。

答えを得る最善の方法は、そのメニュー駆動型コマンドを実行したときに表示される R コードをコピーすることです。次に、適切な文字列を R コードに追加して、目的の場所に移動します。Rcmdr が完全な答えを達成できない可能性があります。これは、コマンドライン R を理解するためのスターター メソッドとして設計されています。少し。)

于 2012-06-18T16:14:12.347 に答える