web-dev-qa-db-ja.com

na.rmのdplyr summarise_each

_summarise_each_を_na.rm=TRUE_とともに使用するようにdplyrに指示する方法はありますか? summarise_each("mean")を使用して変数の平均を取得したいのですが、欠損値を無視するように指定する方法がわかりません。

57
paljenczy

ドキュメントのリンクに従って、funs(mean(., na.rm = TRUE))を使用できるようです。

library(dplyr)
by_species <- iris %>% group_by(Species)
by_species %>% summarise_each(funs(mean(., na.rm = TRUE)))
92
flodel

summarise_eachは非推奨になったため、summarise_allを使用した追加の回答。

  • na.rm = TRUEwithinfuns引数を指定することもできます(@flodelの答え:summarise_eachsummarise_allに置き換えてください)。
  • ただし、na.rm = TRUEafterfuns引数を追加することもできます。

これは、次のように複数の関数を呼び出す場合に便利です:

require(dplyr)

iris %>% 
  group_by(Species) %>%
  summarise_all(funs(mean, max, sd), na.rm = TRUE)
13
Tjebo