У меня есть dataframe, который выглядит следующим образом:Группа данных и получить сумму И счет?
Company Name Organisation Name Amount
10118 Vifor Pharma UK Ltd Welsh Assoc for Gastro & Endo 2700.00
10119 Vifor Pharma UK Ltd Welsh IBD Specialist Group, 169.00
10120 Vifor Pharma UK Ltd West Midlands AHSN 1200.00
10121 Vifor Pharma UK Ltd Whittington Hospital 63.00
10122 Vifor Pharma UK Ltd Ysbyty Gwynedd 75.93
Как суммированию Amount
и сосчитать Organisation Name
, чтобы получить новый dataframe, который выглядит, как это?
Company Name Organisation Count Amount
10118 Vifor Pharma UK Ltd 5 11000.00
Я знаю, как подвести или количество:
df.groupby('Company Name').sum()
df.groupby('Company Name').count()
Но не так, как это сделать, и другое!
Это работает! Спасибо! – Richard
@MaxU есть способ применить сумму и счет к различным, но нескольким coulmns. Когда я пытаюсь предоставить столбцы в виде списка: agg ({['hotel_name', 'hotel_country']: 'count', ['cost', 'income', 'clicks']: 'sum'}), он дает «TypeError: unhashable type:« list »» error – CanCeylan
@CanCeylan не знает, возможно ли это сделать в предложении groupby, но вы можете его достичь, добавив фиктивный графа count в кадр данных заранее, а затем выполните команду group by sum: 'df ['count'] = 1' –