Using your same variable convention I made an example of what I typically do, which is just set an R to generate a random variable within a range. Then I look for 0 because it’s present in all sets. So you have a 1/P chance of getting a bang, up to 1/35 (z).
pV5.
....
..Vp
.R5.
.1F0
rV..
....
.Vr.
....
I am curious about further implementations of your idea, like putting note names of different distributions in each line. Super cool idea!
EDIT: So I just threw this together based on your post, I put in note names but basically it randomly picks a value in row “r,” favoring the letters that occur more frequently. Changing “r” will change the pitch class set and probability distribution based on which row it’s reading. Variable “L” is the length of the list, so you can further adjust the weighted probability making the list longer or shorter.
rV0.lV7..Vl..........
.....Vr.R7...........
..4.X02A6............
.......80.Q.#AABCCDE#
........nVE.#AACCEEg#
............#CCDEEEf#
7Ug..Vn..............
..:01E...............