次のような data.frame があります。
df <- data.frame(population = c("AA","AA","AA","BB","BB","CC","CC","CC"),
individual = c("A1","A2","A3","B1","B2","C1","C2","C3"),
Haplotype1 = rep(1:4,2),
Haplotype2 = rep(5:8,2))
> df
population individual Haplotype1 Haplotype2
1 AA A1 1 5
2 AA A2 2 6
3 AA A3 3 7
4 BB B1 4 8
5 BB B2 1 5
6 CC C1 2 6
7 CC C2 3 7
8 CC C3 4 8
指定された数に満たない個人で構成される母集団がデータセットから除外された新しいデータセットを作成したいと考えています。たとえば、個人が 3 人以上いる母集団のみのデータを再分析したいと考えています。これは私が欲しいデータセットです:
> df <- df[!df$population=="BB",]
> df
population individual Haplotype1 Haplotype2
1 AA A1 1 5
2 AA A2 2 6
3 AA A3 3 7
6 CC C1 2 6
7 CC C2 3 7
8 CC C3 4 8
しかし、私は 5 から 155 個体のサイズの範囲の 400 の個体群を持っており、個体群を名前で手動で選択することは現実的ではありません。本質的に「X 人以上の個人からなるすべての集団を含むデータセットを提供し、X 未満の個人を削除する」という関数を書きたいと思います。ヘルプやフィードバックをいただければ幸いです。