Rの二次元配列の特定成分を変更したいです
二次元配列aに値がランダムで入っていて、この配列aから10回以上登場している値を全て0にしたいのですが、どのように記述すればいいのでしょうか。ループは使わずに行いたいです。
for文を使った書き方だと、
for(time in unique(a)){
if(length(a[a==time]) >= 10 ){
a[a==time] <- 0
}
}
という風に書けると思うのですが、ループを使わずに実現する方法が調べても分かりません。いま行っている作業が非常に大きな二次元配列を大量に扱っているため、なるべくループを用いないで実現できる方法を模索しています。
Rの記述に詳しい方、よろしくお願いいたします。