【发布时间】:2022-05-01 04:47:13
【问题描述】:
这就是问题所在。在 pandas 数据框中创建数据透视表时,我需要汇总其模式的列值以及相关百分比。
这段代码只给了我一个“C”列的模式,但我需要一个模式和它的百分比份额。
df.pivot_table(index = 'A', values = 'C', aggfunc = lambda x: x.mode())
【问题讨论】:
标签: pandas pivot-table mode
这就是问题所在。在 pandas 数据框中创建数据透视表时,我需要汇总其模式的列值以及相关百分比。
这段代码只给了我一个“C”列的模式,但我需要一个模式和它的百分比份额。
df.pivot_table(index = 'A', values = 'C', aggfunc = lambda x: x.mode())
【问题讨论】:
标签: pandas pivot-table mode
一种简单的方法是创建百分位函数:
import numpy as np
def per_25(df):
return np.percentile(df, 25)
def per_50(df):
return np.percentile(df, 50) # 50th percentile is the mode
def per_75(df):
return np.percentile(df, 75)
然后在aggfunc中输入函数:
df.pivot_table(index = 'A', values = 'C', aggfunc = [per_25, per_50, per_75]
【讨论】: