dpwqb 2020-01-27 13:58 采纳率: 33.3%
浏览 3512
已结题

pandas:pivot_table计算占比

例子:

>>>df=pd.DataFrame({
                 "A": ["foo", "foo", "foo", "foo", "foo",
                        "bar", "bar", "bar", "bar"],
                 "B": ["one", "one", "one", "two", "two",
                          "one", "one", "two", "two"],
                 "C": ["small", "large", "large", "small",
                       "small", "large", "small", "small",
                       "large"],
                 "D": [1, 2, 2, 3, 3, 4, 5, 6, 7],
                 "E": [2, 4, 5, 5, 6, 6, 8, 9, 9]})
>>>df
     A    B      C  D  E
0  foo  one  small  1  2
1  foo  one  large  2  4
2  foo  one  large  2  5
3  foo  two  small  3  5
4  foo  two  small  3  6
5  bar  one  large  4  6
6  bar  one  small  5  8
7  bar  two  small  6  9
8  bar  two  large  7  9

>>>table=pd.pivot_table(df, values='D', index=['A', 'B'], 
                        aggfunc=len)

>>>table
         D
A   B     
bar one  2
    two  2
foo one  3
    two  2

请问如何计算每个不同A值和B值下D所占的比例?能提供pivot_table实现最好,groupby也行。

  • 写回答

1条回答 默认 最新

  • HMMHMH 2020-01-27 15:39
    关注
    import pandas as pd
    
    df = pd.DataFrame({
        "A": ["foo", "foo", "foo", "foo", "foo",
              "bar", "bar", "bar", "bar"],
        "B": ["one", "one", "one", "two", "two",
              "one", "one", "two", "two"],
        "C": ["small", "large", "large", "small",
              "small", "large", "small", "small",
              "large"],
        "D": [1, 2, 2, 3, 3, 4, 5, 6, 7],
        "E": [2, 4, 5, 5, 6, 6, 8, 9, 9]})
    count = df.shape[0]
    pivot_table = df.pivot_table(index='A', columns='B', values='D', aggfunc='count')
    pivot_table = pivot_table.apply(lambda x: x / count)
    print(pivot_table)
    
    评论

报告相同问题?

悬赏问题

  • ¥20 Python安装cvxpy库出问题
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥15 python天天向上类似问题,但没有清零
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 C#调用python代码(python带有库)
  • ¥15 矩阵加法的规则是两个矩阵中对应位置的数的绝对值进行加和
  • ¥15 活动选择题。最多可以参加几个项目?
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题