Выбор условия по диапазону, включающему буквы и цифры
Доброго времени суток!
У меня есть две таблицы, одна из них данные, вторая - отчет, который должен быть сформирован по данным первой таблицы.
Таблица данных представлена следующим образом:
| PATIENTS_ID | POL | Age | ICD10 |
|---|---|---|---|
| 10848754 | 0 | 22 | H52 |
| 10848754 | 0 | 22 | R00 |
| 10848754 | 0 | 22 | Z01 |
| 10848754 | 0 | 22 | Z02 |
| 10850478 | 1 | 26 | H52 |
И так далее.
В отчете необходимо агрегировать следующие данные:
| ICD10 | Male (20-29) | Male (30-39) | Female (20-29) | Female (30-39) |
|---|---|---|---|---|
| C00 - C97 | ||||
| E10 - E14 | ||||
| I00 - I99 |
Т.е. нужно собрать все данные «ICD10», которые включают диапазон между C00 и C99, и объединить их вместе с полом и возрастным диапазоном. Я знаю, что в SQL есть "BETWEEN", который может взять диапазон прямо так - буква + цифры, и выберет эти значения без дополнительных условий: "C00, C01, C02".
Есть ли что-то подобное в python/pandas?
Логические выражения типа ">= C00 <= C99" же будут включать другие буквы, я так уже пробовал. А создание отдельного парсера/фильтра кажется слишком громоздким для такой работы. Буду признателен за помощь.