美文网首页
Pandas 计算某一列的累加函数 cumsum

Pandas 计算某一列的累加函数 cumsum

作者: 王叽叽的小心情 | 来源:发表于2022-05-01 22:24 被阅读0次

    需求:对于Pandas的dataframe的某一列数据,我们想要获取该列的数值从大到小依次的累积占比,即获取总量占比为50%时对应的是哪个数值。

    函数:pandas.DataFrame.cumsum
    作用:返回DataFrame或Series轴上的累计和
    参数:DataFrame.cumsum(axis=None, skipna=True)

    • axis,可选参数有{0 or ‘index’, 1 or ‘columns’} 指定是横向的row还是纵向的column,0 代表是 ‘index’, 1 代表是‘columns’。
    • skipna,bool,默认是True,排除NA / null值。如果整个行/列为NA,则结果为NA。

    代码示例如下:

    df = df.sort_values(by=['value'], ascending=False)  # 按照字段value的降序进行排序
    df['flow_cumsum'] = df['value'].cumsum()  # 计算flow的累计数值
    df['flow_cumper'] = df_flow['flow_cumsum'] / df_flow['value'].sum() * 100  # 计算flow的累计比例
    

    这样就可以绘图得到累积占比90%时所对应的flow的数值了,可以进行阈值筛选。

    参考资料:https://pandas.pydata.org/pandasdocs/stable/reference/api/pandas.DataFrame.cumsum.html

    相关文章

      网友评论

          本文标题:Pandas 计算某一列的累加函数 cumsum

          本文链接:https://www.haomeiwen.com/subject/oedpyrtx.html