pandas este un pachet sau o bibliotecă software care se ocupă cu manipularea și analiza datelor, scrisă pentru limbajul de programare Python. Conform Stack Overflow, peste 50% dintre utilizatorii de Python au experiență în pandas, fiind pachetul numărul 2 în acest clasament, după NumPy, pachet cu care are legături, după cum o să vedeți mai jos.

pandas a apărut în 2008, iar din 2009 este un program open-source. Săptămâna aceasta a apărut versiunea 2.0 din pandas. Este cel mai important update din cei aproximativ 15 ani de când exită pandas. Veți vedea în continuare de ce.

pandas a fost construit pe baza altui pachet de Python, numit NumPy. Numele vine de la Numerical Python și este o bibliotecă care poate fi utilizată în lucrul cu matrice și vectori mutidimensionali.

Lucrurile se schimbă odată cu pandas 2.0. NumPy a adus de-a lungul timpului mai multe limitări, motiv pentru care pandas nu se va mai baza pe NumPy. Datele nu vor mai fi reprezentate prin NumPy, ci prin Apache Arrow.

Apache Arrow este un framework open-source care este folosit pentru dezvoltarea aplicațiilor de analiză a datelor care procesează date tabelare. Conține un format de memorie orientat pe coloane, independent de limbaj, care eficientizează operațiunile analitice pentru procesarea în CPU și GPU.

Formatul de memorie Arrow suportă citirea fără copiere a datelor, lucru care face mai ieftină utilizarea acestora. Arrow este proiectat pentru a optimiza performața algoritmilor analitici, precum și a mutării datelor de la un limbaj de programare la altul.

Integrarea Apache Arrow în back-end-ul pandas va face ca aceast pachet Python să fie mai simplu, mai rapid și va lucra mai bine împreună cu alte pachete.

Tipurile de date folosite de Apache Arrow sunt superioare. Acesta suportă tipuri mai multe, dar și mai bune, comparativ cu NumPy. Cel din urmă este foarte bun la datele numerice, dar cam atât…

Folosirea Arrow va ajuta pandas în cazurile în care lipsesc valori, iar pandas nu va trebui să implementeze o versiune proprie pentru fiecare tip de date, așa cum făcea în trecut, cu impact asupra procesării datelor.

Implementarea Pandas 2.0.0

pandas poate fi implementat din repository-ul oficial PyPI (Python Package Index), folosind următoarea linie de cod:

python -m pip install --upgrade pandas==2.0.0

De asemenea, poate fi implementat și din conda-forge, un repository condus de comunitate, scriind:

mamba install -c conda-forge pandas==2.0.0

Comparații și primele rezultate

Primele impresii ale utilizatorilor sunt că pandas 2.0 crește viteza de încărcare și de salvare a fișierelor de date. În ultimii ani se discuta dacă pandas ar trebui înlocuit cu Polars, un pachet rapid de lucru cu date tabulare, și el bazat pe Apache Arrow, conceput în ideea de a procesa date mai rapid decât pandas. Utilizatorii erau de părere că Polars este de 3-4 ori mai rapid decât pandas 1.3.5 (versiunea anterioară).

Până acum, părerile utilizatorilor experimentați sunt că pandas 2.0 este la fel de rapid ca și Polars, dar să nu uităm că pandas 2.0 există numai de câteva zile, deci așteptăm și alte opinii în următoarele săptămâni și luni.

Etichete: