【发布时间】:2019-10-06 16:51:41
【问题描述】:
我正在使用具有以下结构的 pandas DataFrame:
import pandas as pd
import numpy as np
df = pd.DataFrame({'brand' : ['A', 'B', 'A', 'B', 'A', 'B', 'A', 'B', 'C', 'A', 'B', 'C', 'A', 'B', 'C'],
'value' : [111, 111, 222, 222, 333, 333, 444, 444, 444, 555, 555, 555, 666, 777, 888]})
print(df)
brand value
0 A 111
1 B 111
2 A 222
3 B 222
4 A 333
5 B 333
6 A 444
7 B 444
8 C 444
9 A 555
10 B 555
11 C 555
12 A 666
13 B 777
14 C 888
我想计算上表的一些描述性:
首先,计算具有相同值的不同品牌的组数。这是一个帮助视觉:
如您所见,有 5 个组,每个组中的品牌不同,但匹配相同的值。所以基本上,我想编写一个查询来输出这些组的数量(在本例中为 5 个)。
其次,我想更详细地了解每个组。具体来说,计算:
- 单条记录的组数:3(最后3条记录)
- 有 2 条记录的组数:3(红色、绿色和蓝色组)
- 3 条记录的组数:2(紫色和黑色组)
我试图在我的 with 上提出一个解决方案,但没有成功使用 groupby 语句。任何帮助,将不胜感激。
【问题讨论】:
-
您只是在寻找
df.groupby("value").count()吗?