How to invert a list of percentages (list of shares) with respect to their underlying ratio

293 Views Asked by At

Best, how do you invert a list shares with respect to their underlying ratio.

E.g. If i've 2 persons A and B with their respectfully values 3 - 1 then I want to know their inverse shares

A = 3 --> 75%    what I want -->  25%  <-- result
B = 1 --> 25%                -->  75%  <-- result

The above example is +/- easy (1-percentage)
But now I want to know (the formula | methode) for when I've multiple users :

person  share  perc.
A       1      0,083333333
B       2      0,166666667
C       3      0,25
D       6      0,5

Then i just can't use the same logic anymore also, not (1-perc.)/(N-1)

per s   percentage  1-percentag dev_by_3
A   1   0,083333333 0,916666667 0,305555556
B   2   0,166666667 0,833333333 0,277777778
C   3   0,25        0,75        0,25
D   6   0,5         0,5         0,166666667

  sum_s sum_percent sum_1-per   sum_dev_by_3
    12  1           3           1

But what you'll see is. In the beginning, there was a x6 ratio between A and D but after this, the ratio is < 2. Which isn't correct I think (for my purpose)

What I would like to see is, a transformation of 1 2 3 6 into percentages whereby the highest values get the lowest value. but with respect to the initial ratio. A should be 6 times smaller then D, B should be 3 times smaller then D, C should be 2 times smaller then D

(note, it should be programmable in python without to much of complexity) (if possible | a formula would be nice))

kind regards

Dieter