Python R按每组第一行的索引分组

Python R按每组第一行的索引分组,python,pandas,dataframe,group-by,Python,Pandas,Dataframe,Group By,如何按组获取每组第一行的索引 (我知道.groupby.first()返回每个组的第一行,但我不知道如何获取它们的索引) 多谢 IIUC,这应该适用于您,使用: 例如: >>> df data group 0 -0.430336 b 1 2.323743 b 2 -0.065441 b 3 -0.894935 b 4 0.529603 b 5 -1.386138 b 6 -1.198493 b 7 -1.

如何按组获取每组第一行的索引

(我知道.groupby.first()返回每个组的第一行,但我不知道如何获取它们的索引)


多谢

IIUC,这应该适用于您,使用:

例如:

>>> df
       data group
0 -0.430336     b
1  2.323743     b
2 -0.065441     b
3 -0.894935     b
4  0.529603     b
5 -1.386138     b
6 -1.198493     b
7 -1.025802     a
8  1.151468     b
9 -0.831743     b

>>> df.groupby('group').apply(lambda x: x.first_valid_index())
group
a    7
b    0

对于
first
,您可以使用
head

np.random.seed(123)
df = pd.DataFrame({'A':np.random.choice(list('ABC'), 50),'values':np.random.randint(0,100,50)})
df.groupby('A').head(1)
输出:

   A  values
0  C      75
1  B      34
4  A      22

您可以使用
删除重复项

df.drop_duplicates('A',keep='first')
df.drop_duplicates('A',keep='first')