How to do a Count(*) in Pandas?

Viewed 34

I am trying to mimic SQL code converting to Python. The SQL is something like this -

SELECT Category, Type, Code, Description, count(*), avg(Days) 
FROM File 
GROUP BY 1,2,3,4

I got everything else in Python, but not sure how I can do the count(*)?

My python code is

df2 = df1 (['Category','Type','Code','Description'])['Days'].mean().reset_index()
1 Answers

You can use GroupBy.Aggregate to pass a list of aggregate functions.


df2 = df1.groupby(['Category','Type','Code','Description'])\
   ['Days'].agg(['size','mean']).reset_index()

Related