要按年份和其他列对数据进行分组,并根据特定条件计算平均值,可以使用pandas库的groupby函数和agg函数来实现。
下面是一个示例代码,假设我们有一个名为df的DataFrame,其中包含年份、城市和销售额三列数据:
import pandas as pd
# 创建DataFrame
data = {'Year': [2019, 2019, 2020, 2020, 2021, 2021],
'City': ['A', 'B', 'A', 'B', 'A', 'B'],
'Sales': [100, 200, 300, 400, 500, 600]}
df = pd.DataFrame(data)
# 按年份和城市进行分组,并计算销售额的平均值
result = df.groupby(['Year', 'City']).agg({'Sales': 'mean'})
print(result)
运行以上代码,将会得到按年份和城市分组后的销售额平均值:
Sales
Year City
2019 A 100
B 200
2020 A 300
B 400
2021 A 500
B 600
以上代码中,使用groupby函数按照'Year'和'City'两列进行分组。然后使用agg函数对'Sales'列进行求平均值操作。最后将结果打印出来。