熊猫:重新采样后计算唯一值

Mal*_*ien 5 python pandas

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

这是我的数据:

                  User, Type
Datetime
2014-04-15 11:00:00, A, New
2014-04-15 12:00:00, B, Returning
2014-04-15 13:00:00, C, New
2014-04-20 14:00:00, D, New
2014-04-20 15:00:00, B, Returning
2014-04-20 16:00:00, B, Returning
2014-04-20 17:00:00, D, Returning
Run Code Online (Sandbox Code Playgroud)

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

Day, Unique Users
2014-04-15, 3
2014-04-20, 2
Run Code Online (Sandbox Code Playgroud)

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

Kar*_* D. 5

您无需进行重新取样即可在问题中获得所需的输出.我想你可以通过一个groupby约会来结束:

print df.groupby(df.index.date)['User'].nunique()

2014-04-15    3
2014-04-20    2
dtype: int64
Run Code Online (Sandbox Code Playgroud)

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

cnt = df.groupby(df.index.date)['User'].nunique()
cnt.index = cnt.index.to_datetime()
print cnt.resample('D')

2014-04-15     3
2014-04-16   NaN
2014-04-17   NaN
2014-04-18   NaN
2014-04-19   NaN
2014-04-20     2
Freq: D, dtype: float64
Run Code Online (Sandbox Code Playgroud)