I have this dataset where I am trying to split the OrtoB column to allow for my data to be organized A to B in a many to many interaction.
Example dataset
new_name Score OrtoA OrtoB
0 1 3064 g2797.t1 1.000 YHR165C 1.000
1 2 2820 g2375.t1 1.000 YJL130C 1.000
2 3 2711 g1023.t1 1.000 YLR106C 1.000
3 4 2710 g15922.t1 1.000 YNR016C 1.000
4 5 2568 g3549.t1 1.000 YDL171C 1.000
5 6 2494 g10464.t1 1.000 YOR153W 1.000 YDR406W 0.585 YOR328W 0.454
6 7 2402 g15604.t1 1.000 YGR032W 1.000 YLR342W 0.679
I have been able to split a string so far by using the code below in python and follow the example from an earlier answered post pandas: How do I split text in a column into multiple rows? .
z = pd.read_table("table.augustus",header=0)
col_name =z.columns[0]
z = z.rename(columns = {col_name:'new_name'}
z['OrtoB'].str.split(" ").apply(Series,1).stack()
However it only works if there is only one space where I am trying to split. What I am looking for is help with splitting on every 2nd space to get a result like below.
Desired Result
OrtoA OrtoB
g2797.t1 1 YHR165C 1
g2375.t1 1 YJL130C 1
g1023.t1 1 YLR106C 1
g15922.t1 1 YNR016C 1
g3549.t1 1 YDL171C 1
g10464.t1 1 YOR153W 1
g10464.t1 1 YDR406W 0.585
g10464.t1 1 YOR328W 0.454
g15604.t1 1 YGR032W 1
g15604.t1 1 YLR342W 0.679