У меня есть датафрейм, который содержит следующие данные
C_ID Desc Val
0 MN User_1 45000
1 MN User_3 40000
2 MN User_3 40000
3 BG User_1 30000
4 BG User_3 3200
5 BG User_3 2400
Я хотел бы получить вывод, как показано ниже
C_ID Desc Val MNVal BGVal
0 User_1 45000 30000
1 User_2 40000 3200
2 User_3 40000 2400
Ниже приведена моя попытка получить результат.
import pandas as pd
import numpy as np
df = pd.DataFrame({'C_ID':['MN','MN','MN','BG','BG','BG'],'Desc':['User_1','User_3','User_3','User_1','User_3','User_3'],'Val':[45000,40000,40000,30000,3200,2400]})
df['MNVal'] = np.where(df['C_ID'] == 'MN', df['Val'], 0)
df['BGVal'] = np.where(df['C_ID'] == 'BG', df['Val'], 0)
print(df)
Мой вывод, однако, выглядит так:
`C_ID Desc Val MNVal BGVal
0 MN User_1 45000 45000 0
1 MN User_3 40000 40000 0
2 MN User_3 40000 40000 0
3 BG User_1 30000 0 30000
4 BG User_3 3200 0 3200
5 BG User_3 2400 0 2400`
Я новичок в пандах и Numpy.Может ли кто-нибудь предложить мне, как это сделать.