python - 根据列的计数值的数据框子集

标签 python pandas group-by subset

表(df):

customer_id    Order_date 
    1       2015-01-16      
    1       2015-01-19      
    2       2014-12-21      
    2       2015-01-10      
    1       2015-01-10
    3       2018-01-18
    3       2017-03-04
    4       2019-11-05
    4       2010-01-01
    3       2019-02-03
    3       2020-01-01
    3       2018-01-01

需要的输出: df 的子集,其中 customer_ID 的 order_date 超过 3 个。 (跳过 2,4 和 5 客户 ID,因为他们的 order_dates 少于 3 个)
 Customer_id  Number_of_Order_dates
     1          3
     3          5

我尝试过 groupby,但它无法创建子集。请帮忙。

到目前为止尝试过的代码失败了:
df[df['days'].count()>3]

还有一个我试过的,这是不正确的:
 df1=df.groupby('customer_id')['order_date'].count()
 df[df1.iloc[:,1]]

最佳答案

国际大学联盟

df.groupby('customer_id')['Order_date'].nunique().loc[lambda x : x>=3].reset_index()
Out[94]: 
   customer_id  Order_date
0            1           3
1            3           5

关于python - 根据列的计数值的数据框子集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59503266/

相关文章:

xml - 在 XSLT 中按月份和年份对 XML 节点进行分组

python - 如何防止 tox 生成一堆 .egg 目录?

python - 无法访问 python 3 中的(嵌套)枚举类型(proto3)

python - Pandas :合并两个数据框并保留来自单个数据框的非交叉数据

python - 使用滚动 12 个月窗口将自定义函数应用于 Pandas Group

python - 条件运行计数 Pandas

python-3.x - Pandas中基于groupby的数据透视表

python - 尝试加载MP3时出现PyGame错误

python - 将 jupyter notebook 转为 python 脚本的最佳实践

php - GROUP BY 外键还是主键?