![](/img/trans.png)
[英]Calculating Non-Cumulative into a new column from cumulative values (Python)
[英]Cumulative count new values and duplicates by date in python
我想識別我餐廳的以前訪客。 這是我的數據。
import pandas as pd
df = pd.DataFrame()
df['date'] = ['2020-01-01', '2020-01-01','2020-01-01',
'2020-01-02', '2020-01-02', '2020-01-02',
'2020-01-03', '2020-01-03', '2020-01-03',
'2020-01-04', '2020-01-04', '2020-01-04']
df['value'] = ['Abe', 'Abe', 'Abe',
'Abe', 'Ben', 'Abe',
'Ben', 'Ben', 'Coco',
'Abe', 'Abe', 'Abe']
df
date value
0 2020-01-01 Abe
1 2020-01-01 Abe
2 2020-01-01 Abe
3 2020-01-02 Abe
4 2020-01-02 Ben
5 2020-01-02 Abe
6 2020-01-03 Ben
7 2020-01-03 Ben
8 2020-01-03 Coco
9 2020-01-04 Abe
10 2020-01-04 Abe
11 2020-01-04 Abe
我希望它看起來像這樣:
date visitor_total
0 2020-01-01 1
1 2020-01-02 3
2 2020-01-03 5
3 2020-01-04 6
2020-01-01,只有Abe到訪,所以訪客總數是1。2020-01-02,Abe和Ben到訪,所以總數變成3。2020-01-03,Ben到訪兩次,Coco到訪一次,所以總數變為5。2020-01-04,安倍再次造訪3次,總數變為6。
提前致謝!
嘗試:
df.groupby(["date"])["value"].nunique().cumsum()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.