У меня всегда сложилось впечатление, что Pandas использует хеширование при индексировании строк в кадре данных, поэтому такие операции, как df.loc[some_label], равны O(1).Однако только сегодня я понял, что это не так, по крайней мере, для многоиндексного фрейма данных. Как указано в документе, «Индексирование будет работать, даже если данные не отсортированы, но будет довольно неэффективно (и показывать предупреждение о производительности)». В некоторых статьях, которые я нашел, предполагается, что для многоиндексного фрейма данных Pandas использует индексирование на основе двоичного поиска, если вы вызвали sort_index() в фрейме данных; в противном случае он просто линейно сканирует строки.
Мой вопрос:
Использует ли одноиндексный фрейм данных хеш-основу индексирование или нет?
Если не вопрос 1, использует ли он двоичный поиск при вызове sort_index() и линейное сканирование в противном случае, как в случае с несколькими -индексированный фрейм данных?
Если да, на вопрос 1, почему Pandas решили не использовать индексирование на основе хеша и для мультииндексов?
У меня всегда сложилось впечатление, что Pandas использует хеширование при индексировании строк в кадре данных, поэтому такие операции, как df.loc[some_label], равны O(1).Однако только сегодня я понял, что это не так, по крайней мере, для многоиндексного фрейма данных. Как указано в документе, «Индексирование будет работать, даже если данные не отсортированы, но будет довольно неэффективно (и показывать предупреждение о производительности)». В некоторых статьях, которые я нашел, предполагается, что для многоиндексного фрейма данных Pandas использует индексирование на основе двоичного поиска, если вы вызвали sort_index() в фрейме данных; в противном случае он просто линейно сканирует строки. Мой вопрос: [list] [*]Использует ли одноиндексный фрейм данных хеш-основу индексирование или нет? [*]Если не вопрос 1, использует ли он двоичный поиск при вызове sort_index() и линейное сканирование в противном случае, как в случае с несколькими -индексированный фрейм данных? [*]Если да, на вопрос 1, почему Pandas решили не использовать индексирование на основе хеша и для мультииндексов? [/list]