代码之家  ›  专栏  ›  技术社区  ›  HHH

如何过滤pandas中groupby之后的值

  •  2
  • HHH  · 技术社区  · 7 年前

    我有一个数据帧,我想按字段分组,然后只选择不为零的值作为聚合函数,然后将它们转换为列表。这是我的密码

    df.sort_values(by='col1').groupby('col2').apply(lambda x: x if x!=0).apply(list)
    

    但是如果说 invalid syntax . 我做错什么了?

    1 回复  |  直到 7 年前
        1
  •  1
  •   cs95 abhishek58g    7 年前

    将第一个函数转换为 apply 变成一个 lambda 在那里过滤:

    (df.sort_values(by='col1')
       .groupby('col2')
       .apply(lambda x: [y for y in x if y != 0]))