Ускоряем расчет признаков на коротком датасете



Поговорим про такую опенсурс либу как PandaPy, либу, которая имеет значительное преимущество над пандасом на небольших датасетах (в пределах 500к строк).



Насколько измеримо преимущество?



Concatenate (concat) (rows 25x columns 70x)

Merge (merge) (2x)

Group by (group) (10x)

Pivot (pivot) (20x)

Rename (rename) (500x)



В основе лежит Structured NumPy Array - в отличие от обычного массива numpy может работать с разными типами данных, при этом часто экономит 1/3 памяти по сравнению с пандами во время работы с int, float, datetime, str.



Почему так происходит? По большей части из-за накладных расходов pandas, чего стоит простой rename.



Ну ок, сэкономлю я пару сек и что с того? Ничего, просто основной кейс использования - работа с финансовыми данными и трейдинговыми системами, где каждая миллисекунда на счету (чутка забудем про C++).



@gradientdip



Из этой же оперы: ускорение питон кода без боли | CuDF



Питч и кейс использования

Попробовать в колабе