![](/img/trans.png)
[英]Python pandas grouping a dataframe by the unique value of a column
[英]Grouping by unique values in python pandas dataframe
我有這樣的數據聲望
id rev committer_id
date
1996-07-03 08:18:15 1 76620 1
1996-07-03 08:18:15 2 76621 2
1996-11-18 20:51:08 3 76987 3
1996-11-21 09:12:53 4 76995 2
1996-11-21 09:16:33 5 76997 2
1996-11-21 09:39:27 6 76999 2
1996-11-21 09:53:37 7 77003 2
1996-11-21 10:11:35 8 77006 2
1996-11-21 10:17:50 9 77008 2
1996-11-21 10:23:58 10 77010 2
1996-11-21 10:32:58 11 77012 2
1996-11-21 10:55:51 12 77014 2
我想按季度周期分組,然后在committer_id列中顯示唯一條目的數量。 目前暫時不使用id和rev列。
我想要一個如下committer_id的結果
date
1996-09-30 2
1996-12-31 91
1997-03-31 56
1997-06-30 154
1997-09-30 84
實際結果是按每個時間段中的條目數而不是唯一條目匯總的。 我正在使用以下內容:
df[['committer_id']].groupby(pd.Grouper(freq='Q-DEC')).aggregate(np.size)
無法弄清楚如何使用np.unique。
任何想法,請。
最好,
-
df[['committer_id']].groupby(pd.Grouper(freq='Q-DEC')).aggregate(pd.Series.nunique)
應該為您工作。 或df.groupby(pd.Grouper(freq='Q-DEC'))['committer_id'].nunique()
您嘗試使用np.unique
無效,因為它返回了一組唯一的項目。 agg
的結果必須是標量。 因此.aggregate(lambda x: len(np.unique(x))
可能也會起作用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.