次のようなデータフレームがあります。
name val type group
1 A3330 184 ave IX13
2 A3330 42 min IX13
3 A1473 195 ave IX01
4 A1473 93 min IX01
5 A3330 80 ave BG12
6 A3330 44 min BG12
7 A1473 15 ave IX3
8 A1473 91 min IX3
タイプが同じ場合、グループ間で val のすべての値を平均したいと思います。したがって、1 と 5 は、異なるグループであるにもかかわらず、平均化されます。同じことが 2 と 6、3 と 7、4 と 8 にも当てはまります。
name val type
A3330 132 ave
A333 43 min
A1473 105 ave
A1473 92 min
私はこのようなことをすべきだと考えています:
for (metric in type)
for(names in name)
mean(df[df$name==names && type==metric, df$type])
}
}
しかし、私の限られた R の経験では、ループよりも優れた方法が常にあります。助言がありますか?