📅  最后修改于: 2023-12-03 15:08:28.063000             🧑  作者: Mango
在 Pandas 中,我们经常使用 groupby()
方法来按照某些特征对数据进行分组,例如按照某一列的值进行分组,然后对每个组进行一些计算或操作。
如果我们想要获取每个组的值,可以使用 groups
属性。这个属性返回一个字典,其中每个键都表示一个组,对应的值是该组的行索引。
示例代码:
import pandas as pd
# 创建示例数据
data = {'Animal': ['Falcon', 'Falcon', 'Parrot', 'Parrot'],
'Max Speed': [380., 370., 24., 26.]}
df = pd.DataFrame(data)
# 按照 Animal 列进行分组
groups = df.groupby('Animal')
# 获取每个组的值
for name, group in groups:
print(name)
print(group)
上述代码中,我们创建了一个示例数据集,包含了动物种类和它们的最大速度。我们将数据按照 Animal
列进行分组,并打印出每个组的名称和对应的数据。
输出结果如下:
Falcon
Animal Max Speed
0 Falcon 380.0
1 Falcon 370.0
Parrot
Animal Max Speed
2 Parrot 24.0
3 Parrot 26.0
我们可以看到,groupby()
方法返回了一个 DataFrameGroupBy
对象,其中包含了两个组:Falcon 和 Parrot。我们使用 for
循环对每个组进行打印,结果显示出了每个组包含的行。
此外,我们还可以使用 get_group()
方法来直接获取特定组的数据。例如,我们想要获取 Falcon 组的数据,可以使用以下代码:
falcon_group = groups.get_group('Falcon')
falcon_group
将包含 Falcon 组的所有行。