python – Pandas:重新采样后计算唯一值

前端之家收集整理的这篇文章主要介绍了python – Pandas:重新采样后计算唯一值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我刚刚开始使用Pandas并尝试组合:按日期对数据进行分组,并计算每组中的唯一值.

这是我的数据:

  1. User,Type
  2. Datetime
  3. 2014-04-15 11:00:00,A,New
  4. 2014-04-15 12:00:00,B,Returning
  5. 2014-04-15 13:00:00,C,New
  6. 2014-04-20 14:00:00,D,New
  7. 2014-04-20 15:00:00,Returning
  8. 2014-04-20 16:00:00,Returning
  9. 2014-04-20 17:00:00,Returning

这就是我想要达到的目的:将日期时间索引重新采样到当天(我可以做),并计算每天的唯一用户.
我对“类型”专栏并不感兴趣.

  1. Day,Unique Users
  2. 2014-04-15,3
  3. 2014-04-20,2

我正在尝试df.user.resample(‘D’,how =’count’).独特但它似乎没有给我正确的答案.

最佳答案
您无需进行重新取样即可在问题中获得所需的输出.我想你可以在约会时与一个小伙伴相处:

  1. print df.groupby(df.index.date)['User'].nunique()
  2. 2014-04-15 3
  3. 2014-04-20 2
  4. dtype: int64

然后,如果您愿意,您可以重新计算以在计算唯一身份用户后填写时间序列差距:

  1. cnt = df.groupby(df.index.date)['User'].nunique()
  2. cnt.index = cnt.index.to_datetime()
  3. print cnt.resample('D')
  4. 2014-04-15 3
  5. 2014-04-16 NaN
  6. 2014-04-17 NaN
  7. 2014-04-18 NaN
  8. 2014-04-19 NaN
  9. 2014-04-20 2
  10. Freq: D,dtype: float64

猜你在找的Python相关文章