Grupo R por, contando valores não NA
Eu tenho um quadro de dados com uma dispersão de NA
toy_df
# Y X1 X2 Label
# 5 3 3 A
# 3 NA 2 B
# 3 NA NA C
# 2 NA 6 B
Quero agrupar isso pelo campo label e contar quantos valores não NA existem em cada variável para cada label.
desired output:
# Label Y X1 X2
# A 1 1 1
# B 2 0 2
# C 1 0 0
Eu fiz isso usando loops no momento, mas é lento e desarrumado e tenho certeza de que há uma maneira melhor.
O agregado parece chegar a meio caminho, mas inclui NAs na contagem.
aggregate(toy_df, list(toy_df$label), FUN=length)
Alguma idéia apreciada ...