Сериализация использует определенное поведение по умолчанию для хранения и последующего воссоздания объекта. Вы можете указать, в каком порядке или как обрабатывать ссылки и сложные структуры данных, но в конечном итоге это сводится к использованию поведения по умолчанию для каждого примитивного поля данных.
Экстернализация используется в редких случаях, которые вы действительно хотите для хранения и восстановления вашего объекта совершенно по-другому и без использования механизмов сериализации по умолчанию для полей данных. Например, представьте, что у вас есть своя уникальная схема кодирования и сжатия.
Чтобы ответить на первоначальный вопрос о том, как получить индекс в виде целого числа для желаемого выбора, будет работать следующее:
df[df['A']==5].index.item()