我想通过使用arrival_timestamp
,在article_id级别上计算有多少文章首先到达store_A
或store_B
参见以下示例:
主表
arrival_timestamp article_id store_id
2019-04-01 11:04 2 A
2019-04-01 13:12 2 B
2019-04-01 08:24 4 A
2019-04-01 10:24 4 B
2019-04-10 07:00 7 A
2019-04-10 10:14 7 B
2019-04-23 07:34 9 A
2019-04-23 05:52 9 B
输出表
storeA_count_first_articles storeB_count_first_articles
3 1
这里有一种方法:
first_arrivals = df.assign(first_arrival_timestamp = df.groupby("article_id")["arrival_timestamp"].transform("min")).
query("arrival_timestamp == first_arrival_timestamp")
pd.pivot_table(first_arrivals, columns="store_id", aggfunc="count", values=["article_id"])
输出:
store_id A B
article_id 3 1