pandas.DataFrame.aggregate
函数用于将一个或多个操作应用于DataFrame的一列或多列。它提供了一种灵活的方法来总结和计算数据。
1、单个函数
python
复制代码
import pandas as pd
# 创建一个示例DataFrame
data = {
'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8]
}
df = pd.DataFrame(data)
# 对每一列应用单个函数,例如求和
result = df.aggregate('sum')
print("应用单个函数后的结果:")
print(result)
# 输出:
# A 10
# B 26
# dtype: int64
2、多个函数
python
复制代码
import pandas as pd
# 创建一个示例DataFrame
data = {
'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8]
}
df = pd.DataFrame(data)
# 对每一列应用多个函数,例如求和和求均值
result = df.aggregate(['sum', 'mean'])
print("应用多个函数后的结果:")
print(result)
# 输出:
# A B
# sum 10.0 26.0
# mean 2.5 6.5
3、不同列应用不同函数
python
复制代码
import pandas as pd
# 创建一个示例DataFrame
data = {
'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8]
}
df = pd.DataFrame(data)
# 针对不同列应用不同函数
result = df.aggregate({'A': 'sum', 'B': 'mean'})
print("不同列应用不同函数后的结果:")
print(result)
# 输出:
# A 10.0
# B 6.5
# dtype: float64
4、自定义函数
python
复制代码
import pandas as pd
# 创建一个示例DataFrame
data = {
'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8]
}
df = pd.DataFrame(data)
# 定义一个自定义函数
def range_func(x):
return x.max() - x.min()
# 对每一列应用自定义函数
result = df.aggregate(range_func)
print("应用自定义函数后的结果:")
print(result)
# 输出:
# A 3
# B 3
# dtype: int64