Tôi có một số DataFrame mà tôi muốn nhóm theo ID, e. G .:Pandas Groupy chỉ lấy N Nhóm đầu tiên
import pandas as pd
df = pd.DataFrame({'item_id': ['a', 'a', 'b', 'b', 'b', 'c', 'd'], 'user_id': [1,2,1,1,3,1,5]})
print df
nào tạo:
item_id user_id
0 a 1
1 a 2
2 b 1
3 b 1
4 b 3
5 c 1
6 d 5
[7 rows x 2 columns]
tôi có thể dễ dàng nhóm bởi id:
grouped = df.groupby("item_id")
Nhưng làm thế nào tôi có thể trở lại chỉ có nhóm bằng cách đầu tiên N đối tượng? Ví dụ. Tôi chỉ muốn có 3 item_id duy nhất đầu tiên.
Sẽ dễ dàng hơn khi chỉ lọc bộ lọc đầu tiên? 'df [df ['item_id']. isin (df ['item_id']. duy nhất() [: 3])]. groupby ('item_id')'? – EdChum
@firelynx Tôi đồng ý. Tôi đã không tìm thấy kết quả đó –