Как мне получить индекс каждого элемента в объекте groupby в Pandas?Python

Программы на Python
Ответить
Anonymous
 Как мне получить индекс каждого элемента в объекте groupby в Pandas?

Сообщение Anonymous »


Я использую groupby для кадра данных на основе нужных мне столбцов, а затем мне нужно взять индекс каждого элемента в его группе. Под индексом я имею в виду, что если в группе 10 элементов, индекс изменяется от 0 до 9, а не индекс кадра данных.

Мой код для этого приведен ниже:

импортировать панд как pd df = pd.DataFrame({'A': np.random.randint(0, 11, 10 ** 3), 'B': np.random.randint(0, 11, 10 ** 3), 'C': np.random.randint(0, 11, 10 ** 3), 'D': np.random.randint(0, 2, 10 ** 3)}) grouped_by = df.groupby(["A", "B", "C"]) группы = dict(список(grouped_by)) index_dict = {k: v.index.tolist() для k,v в groups.items()} df["POS"] = df.apply(lambda x: index_dict[(x["A"], x["B"], x["C"])].index(x.name), axis=1 ) Кадр данных здесь является всего лишь примером.

Есть ли способ использовать grouped_by для достижения этой цели?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»