I want to split each of these single rows in pandas dataframe into multiple rows. The need is to have the values in 's_code' and 's_percent' both split at the same time.
df
id s_code s_percent s_type s_name player total-value
XI-GB-1 12220;14020;31110 35;33;32 2 yaba p1 120398
XI-GB-2 23630;41010;23110 36;30;34 4 daba p4 123453
XI-GB-3 15120;12511 75;25 7 doo p3 78542
XI-GB-4 23110;23510;15110 10;55;35 9 hakuna p2 97234
XI-GB-5 23210;23230 40;60 1 matata p6 10000
Using some of the answers from Split (explode) pandas dataframe string entry to separate rows I was able to split single rows under one column (i.e. either s_code or s_percent) into multiple rows but that's not what I want i want the rows to be split across s_code and s_percent at the same time.
I tried splitting them separately (first by s_code and then by s_percent) and then merging them but that created multiple unnecessary mappings.
The mapping I want to have, should be such that upon splitting by ';',the first value in s_code should only correspond to the first value under s_percent, and similarly the second value in s_code to second value in s_percent and so on.
The desired output that I want should be like this:
id s_code s_percent s_type s_name player total-value
XI-GB-1 12220 35 2 yaba p1 120398
XI-GB-1 14020 33 2 yaba p1 120398
XI-GB-1 31110 32 2 yaba p1 120398
XI-GB-2 23630 36 4 daba p4 123453
XI-GB-2 41010 30 4 daba p4 123453
XI-GB-2 23110 34 4 daba p4 123453
XI-GB-3 15120 75 7 doo p3 78542
XI-GB-3 12511 25 7 doo p3 78542
XI-GB-4 23110 10 9 hakuna p2 97234
XI-GB-4 23510 55 9 hakuna p2 97234
XI-GB-4 15110 35 9 hakuna p2 97234
XI-GB-5 23210 40 1 matata p6 10000
XI-GB-5 23230 60 1 matata p6 10000