Подтвердить что ты не робот

Как проверить, отсортирован ли индекс фрейма Pandas

У меня есть ванильный файл pandas с индексом. Мне нужно проверить, отсортирован ли индекс. Предпочтительно, не сортируя его снова.

например. Я могу проверить индекс, чтобы узнать, уникален ли он по index.is_unique(), аналогичный способ для сортировки тестов?

4b9b3361

Ответ 1

Как насчет:

df.index.is_monotonic

Ответ 2

Если разрешено sort, попробуйте

all(df.sort_index().index == df.index)

Если нет, попробуйте

all(a <= b for a, b in zip(df.index, df.index[1:]))

Первый из них более читабельен, а второй имеет меньшую временную сложность.

ИЗМЕНИТЬ

Добавьте другой метод, который я только что нашел. Подобно второму, но сравнение веторизуется

all(df.index[:-1] <= df.index[1:]) 

Ответ 3

Для неиндексов:

df.equals(df.sort())