Возможно ли реализовать в pandas двойную индексацию? Если нет, то подскажите, пожалуйста, совместимый способ реализовать её?

Имеется DataFrame следующей структуры:

Int64Index: 175 entries, 0 to 174
Data columns (total 3 columns):
 #   Column    Non-Null Count  Dtype 
---  ------    --------------  ----- 
 0   VP1       175 non-null    string
 1   probe_id  175 non-null    string
 2   2C        175 non-null    string
dtypes: string(3)
memory usage: 5.5 KB

Данные в колонках 2C и probe_id являются уникальными и я хотел бы использовать их в качестве индексов, чтобы получать быстрый доступ к нужному ряду по одному из них. Сейчас из данных тут только VP1, и можно временно решить проблему через нативный питонячий словарь, но я планирую активно использовать эти ключи, соединять их с другими таблицами, конвертировать в GeoDataFrame, задействовать векторные операции и функции и т. д.

Мультииндекс в pandas не позволяет реализовать задуманное, так как является иерархическим, следовательно, нельзя быстро получить нужный ряд как Series лишь по одному из индексов. Кто-нибудь сталкивался с подобным или представляет, как можно было бы реализовать нужное поведение? Если нет, то существуют ли пакеты, где это возможно и есть похожий функционал (может быть dask, я плохо с ним знаком)? Или мой путь – это только SQL и ORM?


Ответы (0 шт):