Choosing from gold, silver, or bronze effectively does this. It groups them by type and puts a check mark next to those you've earned.
Having said that, if this level of detail is desired, providing filters would accomplish what you want.
When bringing up the badge list, a list of filters could be shown:
[✓]Earned[x]Earned [✓]Unearned[x]Unearned [✓]Gold[x]Gold [✓]Silver[x]Silver [✓]Bronze[x]Bronze
You could then select and deselect individual filters as you wished.