I have df as below:
CV Alg Month Result
0 CV_1 RND JAN 66.6
1 CV_1 XGB FEB 77.0
2 CV_1 LR MAR 85.5
3 CV_1 DCT APR 53.7
4 CV_1 ADB MAY 78.0
5 CV_1 LASSO JUN 77.7
6 CV_2 RND JAN 44.3
7 CV_2 XGB FEB 77.9
8 CV_2 LR MAR 85.9
9 CV_2 DCT APR 88.0
10 CV_2 ADB MAY 66.8
11 CV_2 LASSO JUN 77.3
{'CV': {0: 'CV_1', 1: 'CV_1', 2: 'CV_1', 3: 'CV_1', 4: 'CV_1', 5: 'CV_1', 6: 'CV_2', 7: 'CV_2', 8: 'CV_2', 9: 'CV_2', 10: 'CV_2', 11: 'CV_2'}, 'Alg': {0: 'RND', 1: 'XGB', 2: 'LR', 3: 'DCT', 4: 'ADB', 5: 'LASSO', 6: 'RND', 7: 'XGB', 8: 'LR', 9: 'DCT', 10: 'ADB', 11: 'LASSO'}, 'Month': {0: 'JAN', 1: 'FEB', 2: 'MAR', 3: 'APR', 4: 'MAY', 5: 'JUN', 6: 'JAN', 7: 'FEB', 8: 'MAR', 9: 'APR', 10: 'MAY', 11: 'JUN'}, 'Result': {0: 66.6, 1: 77.0, 2: 85.5, 3: 53.7, 4: 78.0, 5: 77.7, 6: 44.3, 7: 77.9, 8: 85.9, 9: 88.0, 10: 66.8, 11: 77.3}}
And I'm trying to create final result dataframe using below format:
RND XGB LR DCT ADB LASSO
JAN NaN NaN NaN NaN NaN NaN
FEB NaN NaN NaN NaN NaN NaN
MAR NaN NaN NaN NaN NaN NaN
APR NaN NaN NaN NaN NaN NaN
MAY NaN NaN NaN NaN NaN NaN
JUN NaN NaN NaN NaN NaN NaN
NaN values should be average of Result column of CV_1, CV_2 ... CV_n for each month and each algorithm.
I've used set_index for months and groupby for Alg column but could not do it. How can i do this?