It seems like what you want is biased/weighted random number
selection, where the weights are stored as the keys of a hash.
You might take a look at this previous node, which has some
good responses: Biased random number selection
You could probably adapt one of those responses to your own