In [5]:
# Grouping by a Single Column
import pandas as pd
df = pd.DataFrame({
''''''''Category'''''''': [''''''''A'''''''', ''''''''B'''''''', ''''''''A'''''''', ''''''''B'''''''', ''''''''A'''''''', ''''''''B''''''''],
''''''''Values'''''''': [10, 20, 30, 40, 50, 60]
})
grouped_df = df.groupby(''''''''Category'''''''').sum()
print(grouped_df)
Values Category A 90 B 120
In [6]:
# Grouping by Multiple Columns
import pandas as pd
df = pd.DataFrame({
''''''''Category'''''''': [''''''''A'''''''', ''''''''A'''''''', ''''''''B'''''''', ''''''''B'''''''', ''''''''C'''''''', ''''''''C''''''''],
''''''''Subcategory'''''''': [''''''''X'''''''', ''''''''Y'''''''', ''''''''X'''''''', ''''''''Y'''''''', ''''''''X'''''''', ''''''''Y''''''''],
''''''''Values'''''''': [10, 20, 30, 40, 50, 60]
})
grouped_df = df.groupby([''''''''Category'''''''', ''''''''Subcategory'''''''']).sum()
print(grouped_df)
Values Category Subcategory A X 10 Y 20 B X 30 Y 40 C X 50 Y 60
In [7]:
# Grouping and Applying Multiple Aggregations
import pandas as pd
df = pd.DataFrame({
''''''''Category'''''''': [''''''''A'''''''', ''''''''B'''''''', ''''''''A'''''''', ''''''''B'''''''', ''''''''A'''''''', ''''''''B''''''''],
''''''''Values'''''''': [10, 20, 30, 40, 50, 60]
})
grouped_df = df.groupby(''''''''Category'''''''').agg({''''''''Values'''''''': [''''''''sum'''''''', ''''''''mean'''''''', ''''''''max'''''''',''''''''std'''''''']})
print(grouped_df)
Values sum mean max std Category A 90 30.0 50 20.0 B 120 40.0 60 20.0
In [8]:
# Grouping and Applying a Custom Function
import pandas as pd
df = pd.DataFrame({
''''''''Category'''''''': [''''''''A'''''''', ''''''''B'''''''', ''''''''A'''''''', ''''''''B'''''''', ''''''''A'''''''', ''''''''B''''''''],
''''''''Values'''''''': [10, 20, 30, 40, 50, 60]
})
def range_func(x):
return x.max() - x.min()
grouped_df = df.groupby(''''''''Category'''''''').agg({''''''''Values'''''''': range_func})
print(grouped_df)
Values Category A 40 B 40