I’m trying to convert the following dict: partlistzonesdef (has 50 keys) into a dataframe: Lets say we have the dict:
{1: [60, 127], 2: [21, 43, 61, 19], 3: [186, 154, 37], 4: [99, 68, 80, 87, 128, 98]}
How can I convert that to a dataframe like this:
Index Area 0 1 60 1 1 127 2 2 21 3 2 43 4 2 61 5 2 19 6 3 186 7 3 154 8 3 37
And so on?
Advertisement
Answer
Create a Series
and transform each element of the list to a row with explode
then reset_index
to get expected outcome:
df = pd.Series(d, name='Area').rename_axis('Index').explode().reset_index()
Output:
>>> df Index Area 0 1 60 1 1 127 2 2 21 3 2 43 4 2 61 5 2 19 6 3 186 7 3 154 8 3 37 9 4 99 10 4 68 11 4 80 12 4 87 13 4 128 14 4 98