Kacilaki 2021-09-27 21:31 采纳率: 100%
浏览 39
已结题

如何对数据按列求频数

我知道R有apply(data,2,table)这种方法。
我也知道按行来算频数,可以用Python的collect模块很快。awk来建字典也行。
但是按列来求频数什么方法是最快的?不是一列,是全部列。

  • 写回答

1条回答 默认 最新

  • CSDN专家-HGJ 2021-09-27 21:44
    关注

    可结合collections的Counter和pandas中的apply来实现,示例:

    import pandas as pd
    from collections import Counter
    df=pd.DataFrame({'a':[2,3,5,6,2,3],'b':[4,6,8,9,6,9]})
    df=df.apply(lambda x:Counter(x))
    print(df)
    
    
    a    {2: 2, 3: 2, 5: 1, 6: 1}
    b    {4: 1, 6: 2, 8: 1, 9: 2}
    dtype: object
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月9日
  • 已采纳回答 10月1日
  • 创建了问题 9月27日

悬赏问题

  • ¥50 随机森林与房贷信用风险模型
  • ¥50 buildozer打包kivy app失败
  • ¥30 在vs2022里运行python代码
  • ¥15 不同尺寸货物如何寻找合适的包装箱型谱
  • ¥15 求解 yolo算法问题
  • ¥15 虚拟机打包apk出现错误
  • ¥15 用visual studi code完成html页面
  • ¥15 聚类分析或者python进行数据分析
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备