У меня есть упрощенный фрейм данных, скажем:
df = pd.DataFrame({'Letter': ['A', 'B', 'A', 'B','A','B','A','B'], 'T/F': [True, True, False, False,True,False,True,False], 'Number':[5, 6, 7, 8, 9,10,11,12]})
У меня есть другой df2, у которого уже есть столбцы для (isAB или isTF). Я хочу сделать из моих новых столбцов что-то вроде df2.loc [:, 'A_True] со средним числом для A и True. Если я сделаю следующее:
df.groupby(['Letter','T/F'])['Number'].mean()[1::2]
Это выводит
Letter T/F
A True 8.333333
B True 6.000000
Name: Number, dtype: float64
Я хочу, чтобы у моего df2 был столбец, который является только 8.33333, 6. Требуется ли слияние? Я пытаюсь сэкономить время вместо того, чтобы
for name,group in df.groupby('Letter'):
df2.loc[df['Letter']==A,'A_True'] = group.loc[group['T/F'==True],'Number'].mean()