Как сортировать фрейм данных Python Pandas в повторяющемся порядке после группировки?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как сортировать фрейм данных Python Pandas в повторяющемся порядке после группировки?

Сообщение Anonymous »

У меня есть набор данных, отсортированный в следующем порядке:



столбец 1
столбец 2
столбец 3




a
1
r

а
1
с


а
2
t


a
2u


a
3
v


a
3
w

b
4
x


b
4
y


b
5z


b
5
q


b
6
w

b
6
e



Я хочу, чтобы оно было отсортировано следующим образом порядок:



столбец1
столбец2
столбец3




a
1
r


a
2t


a
3
v


а
1
с

a
2
u


а
3
w


b
4x


b
5
z


b
6
w

b
4
y


b
5
q


b
6e



Мне нужен col2 чтобы быть повторяющимся, как, например, для значений col1 'a', это должно быть 1,2,3,4, а затем снова 1,2,3,4 вместо 1,1,2,2,3,3,4,4.
Я использовал следующий код, но это не так. работает:
import pandas as pd

# Creating the DataFrame
data = {
'col1': ['a', 'a', 'a', 'a', 'a', 'a', 'b', 'b', 'b', 'b', 'b', 'b'],
'col2': [1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6],
'col3': ['r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'q', 'w', 'e']
}

df = pd.DataFrame(data)

# Sort by col1, then reorder col2 within each group
df_sorted = df.sort_values(by=['col1', 'col2']).reset_index(drop=True)

df_sorted = df_sorted.groupby('col1', group_keys=False).apply(lambda x: x.sort_values('col2'))

# Display the sorted dataframe
print(df_sorted)



Подробнее здесь: https://stackoverflow.com/questions/791 ... er-groupby
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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