6
Tôi có một DataFrame trông như thế này:Pandas groupby với bin đếm
+----------+---------+-------+
| username | post_id | views |
+----------+---------+-------+
| john | 1 | 3 |
| john | 2 | 23 |
| john | 3 | 44 |
| john | 4 | 82 |
| jane | 7 | 5 |
| jane | 8 | 25 |
| jane | 9 | 46 |
| jane | 10 | 56 |
+----------+---------+-------+
và tôi muốn biến nó để đếm xem thuộc về thùng nào đó như thế này:
+------+------+-------+-------+--------+
| | 1-10 | 11-25 | 25-50 | 51-100 |
+------+------+-------+-------+--------+
| john | 1 | 1 | 1 | 1 |
| jane | 1 | 1 | 1 | 1 |
+------+------+-------+-------+--------+
tôi đã thử:
bins = [1, 10, 25, 50, 100]
groups = df.groupby(pd.cut(df.views, bins))
groups.username.count()
Nhưng nó chỉ cung cấp số lượng tổng hợp và không được tính bởi người dùng. Làm thế nào tôi có thể nhận được số lượng người dùng đếm?
Các đếm tổng hợp (sử dụng dữ liệu thực tế của tôi) trông như thế này:
impressions
(2500, 5000] 2332
(5000, 10000] 1118
(10000, 50000] 570
(50000, 10000000] 14
Name: username, dtype: int64