[英]Pandas show both unique counts and unique values?
假設我有一個這樣的數據框:
import pandas as pd
df = pd.DataFrame([
('a', 'aa'),
('b', 'aa'),
('c', 'bb'),
('d', 'bb'),
('e', 'cc'),
('f', 'cc'),
('h', 'cc')
], columns=['group', 'id'])
我做了一個 groupby 來顯示唯一值的數量以及唯一值本身。 這是我現在正在做的事情:
df1 = df.groupby(["id"])["group"].nunique()
print(df1)
id
aa 2
bb 2
cc 3
df2 = df.groupby(['id'])['group'].agg(['unique'])
print(df2)
id
aa [a, b]
bb [c, d]
cc [e, f, h]
但是,我試圖將這兩個顯示在一起(一列顯示計數,一列顯示如下所示的值。有什么辦法可以做到?
id count values
aa 2 [a, b]
bb 2 [c, d]
cc 3 [e, f, h]
res = df.groupby('id')['group'].agg(count='nunique', values='unique')
輸出
>>> res
count values
id
aa 2 [a, b]
bb 2 [c, d]
cc 3 [e, f, h]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.