Embora eu ache que aggregate
provavelmente seja a solução que você está procurando, se você quiser criar uma lista explícita de todas as combinações possíveis de fatores, expand.grid
fará isso por você. por exemplo
> expand.grid(height = seq(60, 80, 5), weight = seq(100, 300, 50),
sex = c("Male","Female"))
height weight sex
1 60 100 Male
2 65 100 Male
...
30 80 100 Female
31 60 150 Female
Você pode fazer um loop sobre cada linha no quadro de dados resultante para extrair registros dos dados originais.