📜  选择每组 pandas 的第一行 - Python (1)

📅  最后修改于: 2023-12-03 15:41:57.662000             🧑  作者: Mango

选择每组 pandas 的第一行 - Python

在处理数据时,经常需要按组操作数据,然后选择每组中的一些行或列。在 Pandas 中,我们可以使用 groupbyapply 方法来完成这个任务。以下是一个简单的示例:

import pandas as pd

df = pd.DataFrame({
    'group': ['A', 'A', 'B', 'B', 'C'],
    'value': [1, 2, 3, 4, 5]
})

df.groupby('group').apply(lambda x: x.iloc[0])

这将从 df 中选择每个组的第一行:

  group  value
group            
A         A      1
B         B      3
C         C      5

在这个示例中,我们创建了一个包含组名和值的 DataFrame。随后,我们使用 groupby 方法将 DataFrame 按组分组。然后,我们使用 apply 方法应用一个 lambda 函数,该函数返回每个组的第一行。最后,我们得到了一个新的 DataFrame,其中包含每个组的第一行。

如果要选择每组的多行,可以将 iloc 的索引改为切片,例如 x.iloc[0:2] 将选择每个组的前两行。

总之,在 Pandas 中选择每个组的第一行是一项常见的任务,使用 groupbyapply 方法可以轻松完成。