Funkcje GroupBy w Pandonie, takie jak SUM (col_1 * col_2), średnia ważona itp

Czy możliwe jest bezpośrednie obliczenie produktu (lub na przykład sumy) dwóch kolumn bez użycia

<code>grouped.apply(lambda x: (x.a*x.b).sum()
</code>

Jest o wiele (mniej niż połowę czasu na moim komputerze) szybsze w użyciu

<code>df['helper'] = df.a*df.b
grouped= df.groupby(something)
grouped['helper'].sum()
df.drop('helper', axis=1)
</code>

Ale tak naprawdę nie lubię tego robić. Przydatne jest na przykład obliczenie średniej ważonej na grupę. Oto podejście lambda

<code>grouped.apply(lambda x: (x.a*x.b).sum()/(df.b).sum())
</code>

i znowu jest dużo wolniejszy niż dzielenie pomocnika przez b.sum ().

questionAnswers(3)

yourAnswerToTheQuestion