Векторные операции (+, np.log, .str, .dt) работают по целым массивам быстро; apply вызывает Python-функцию построчно/поколоночно и обычно медленнее.
Разбор
- Сначала ищите векторизацию и built-in методы.
apply уместен для сложной логики без vector path.
axis=1 apply особенно дорог.
- Профилируйте на реальном объёме, не на 5 строках.
Итог
Векторизация — default; apply — запасной путь с ценой интерпретатора.