I have following dataframe:
df = pd.DataFrame([[1,1,1,1,1,1,1,1,2,2,2,2,3,3,3,3,3,3,3],['A','B','B','B','C','D','D','E','A','C','C','C','A','B','B','B','B','D','E'], [18,25,47,27,31,55,13,19,73,55,58,14,2,46,33,35,24,60,7]]).T
df.columns = ['Brand_ID','Category','Price']
   Brand_ID Category Price
0         1        A    18
1         1        B    25
2         1        B    47
3         1        B    27
4         1        C    31
5         1        D    55
6         1        D    13
7         1        E    19
8         2        A    73
9         2        C    55
10        2        C    58
11        2        C    14
12        3        A     2
13        3        B    46
14        3        B    33
15        3        B    35
16        3        B    24
17        3        D    60
18        3        E     7
What I need to do is to group by Brand_ID and category and count (similar to the first part of this question). However, I need instead to write the output into a different column depending on the category. So my Output should look like follows:
   Brand_ID  Category_A  Category_B  Category_C  Category_D  Category_E
0         1           1           3           1           2           1
1         2           1           0           3           0           0
2         3           1           4           0           1           1
Is there any possibility to do this directly with pandas?
 
     
    