Description:
I have a pandas dataframe that contains two columns ID
and Value
.
I want to group the the ID
column
and convert the group results (Value
) into multiple columns with Numeric suffix as Value1
, Value2
, Value3
and so on based on the total results.
Example:
Current DataFrame:
df = pd.DataFrame({'ID': ['A', 'A', 'A', 'B', 'C', 'C', 'D', 'E', 'F', 'F', 'F', 'F'], 'Value': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L'] } )
df
ID Value
0 A A
1 A B
2 A C
3 B D
4 C E
5 C F
6 D G
7 E H
8 F I
9 F J
10 F K
11 F L
Expected DataFrame:
ID Value1 Value2 Value3 Value4
0 A A B C NaN
1 B D NaN NaN NaN
2 C E F NaN NaN
3 D G NaN NaN NaN
4 E H NaN NaN NaN
5 F I J K L
I have tried multiple solutions with pivot table as well, but I don't get the results.
What I tried
pd.pivot(df, index='ID', columns='ID', values='Value')