I have below database format stored in a pandas dataframe
ID          Block
MGKfdkldr   Product 1
MGKfdkldr   Product 2
MGKfdkldr   Product 3
GLOsdasd    Product 2
GLOsdasd    Product 3
NewNew      Product 1
OldOld      Product 4
OldOld      Product 8
Here is the sample dataframe code
df1 = pd.DataFrame({'ID':['MGKfdkldr','MGKfdkldr','MGKfdkldr','GLOsdasd','GLOsdasd','NewNew','OldOld','OldOld'],'Block':['Product 1','Product 2','Product 3','Product 2','Product 3','Product 1','Product 4','Product 8']})
I am looking for below data format from this(Expected output):
ID          Block-1     Block-2     Block-3
MGKfdkldr   Product 1   Product 2   Product 3
GLOsdasd    Product 2   Product 3   
NewNew      Product 1       
OldOld      Product 4   Product 8   
I have tried to melt it with pd.melt function but it just transposing data to column header but I am looking for bit difference. Is there any other method through which I can get my Expected output?
Can anyone help me on this? Please
 
    