1. ホーム
  2. r

[解決済み】ベクトルからNA値を削除する

2022-04-08 23:56:48

質問

巨大なベクターがあり、そのベクターにはいくつかの NA の値で、そのベクトルの最大値を求めようとしています(ベクトルはすべて数字です)、しかし、これは NA の値です。

を削除するにはどうすればよいですか? NA の値は、最大値を計算できるようになりますか?

どのように解決するのですか?

試行錯誤 ?max という文字列を持つことがわかります。 na.rm = 引数で、デフォルトでは FALSE . (これは、他の多くの R 関数の一般的なデフォルトであり、その中には sum() , mean() など)

設定 na.rm=TRUE は、ちょうどあなたが求めていることを行います。

d <- c(1, 100, NA, 10)
max(d, na.rm=TRUE)

をすべて削除したい場合は NA の代わりに、このイディオムを使ってください。

d <- d[!is.na(d)]

最後の注意点:その他の関数(例えば table() , lm() および sort() ) があります。 NA -に関連する引数で、異なる名前を使っている(そして異なるオプションを提供している)。そのため、もし NA を使用すると、関数を呼び出す際に問題が発生することがあります。この場合、関数の引数の中に解決策が組み込まれていないか確認する必要があります。私が見つけたのは 通常 というのがあります。