[英]Apply two numpy functions at the same time for aggfunc when using pivot_table
我有这张桌子:
user_id | datetime | type
1 | 2015-01-01 | 1
1 | 2015-01-01 | 2
1 | 2015-01-01 | 2
1 | 2015-01-02 | 2
2 | 2015-01-01 | 2
2 | 2015-01-02 | 1
2 | 2015-01-02 | 2
我有这个pivot_table
代码:
df = df.pivot_table('type', ['user_id'], ['datetime'], aggfunc=np.mean)
但是,我想将两个 unique().sum() 函数一起应用来满足此条件,而不是np.mean
:
如果每个用户在特定日期有
1
和2
,那么我想放3
,如果特定日期只有1
,我想放2
,等等。
例如,这里是所需的输出,如下所示:
user_id | 2015-01-01 | 2015-01-02
1 | 3 | 2
2 | 2 | 3
有任何想法吗?
这是你想要的吗?
In [50]: df.pivot_table('type', ['user_id'], ['datetime'], aggfunc=lambda x: x.unique().sum())
Out[50]:
datetime 2015-01-01 2015-01-02
user_id
1 3 2
2 2 3
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.