У меня есть фрейм данных, который выглядит как
dftest=pd.DataFrame(np.random.randint(0,10,size=(10, 4)), columns=
['w','v1','v2','v3'])
df['x']=np.random.choice(a=[False, True], size=(1, 10), p=[0.5, 0.5])[0]
Я хотел бы получить фрейм данных, равный
df.groupby('x').describe()
, за исключением того, что я хотел бы получить средневзвешенное значение
df.groupby(['x']).apply(lambda x: np.average(x['v1'], weights=x['w'], axis=0))
и в качестве дополнительного столбца 'std' / ('count'-1)
Когда я пытаюсь
df.groupby(['x']).apply(lambda x: np.average(x[['v1','v2','v3']], weights=x['w'], axis=0))
, я получаю фрейм данных с 1 столбцом, содержащим списокиз 3-х значений вместо 3-х столбцов.
Как все это аккуратно поместить в обычный фрейм данных?