Home » Articole » Articole » Calculatoare » Programare » Python » Tabele în Python (1/3): DataFrame

Tabele în Python (1/3): DataFrame

postat în: Python 0

Spre deosebire de matricele NumPy și Serii Pandas, pe care am învățat mai multe moduri diferite de a crea, vom învăța doar o modalitate de a crea un DataFrame. Asta pentru că DataFrame-urile sunt în mod normal suficient de mari încât este prea obositor să le introduci manual. În schimb, le vom citi dintr-o sursă externă; un fișier .csv.

De fapt, vom folosi aceeași funcție read_csv() pe care am folosit-o în secțiunea 11.1, deși în mod ciudat, de data aceasta nu va fi nevoie să specificăm atât de multe argumente. Să presupunem că avem un fișier „davieses.csv” cu următoarele conținuturi: persoană, vârstă, sex, înălțime, instrument

person,age,gender,height,instrument 
Dad,50,M,73,piano 
Mom,49,F,66,flute 
Lizzy,21,F,63,guitar 
TJ,20,M,71,trombone 
Johnny,17,M,72,euphonium

Îl putem citi într-un DataFrame cu acest cod:

my_first_df = pd.read_csv("davieses.csv").set_index('person') 
print(my_first_df)
▐         age gender height instrument 
▐ person 
▐ Dad      51   M   73   piano 
▐ Mom     49   F   66   flute 
▐ Lizzy     21   F   63   guitar 
▐ TJ         20   M   71   trombone 
▐ Johnny 17   M   72   euphonium

Câteva lucruri. În primul rând, este posibil să fi observat că fișierul davieses.csv avea un rând „antet”. Aceasta înseamnă că prima linie a fișierului nu este ca celelalte: în loc să conțină informații despre un anumit membru al familiei, conține tipul de informații pentru fiecare membru al familiei. Arăta așa:

person,age,gender,height,instrument

și veți observa că aceste cuvinte (cu excepția primului; mai multe despre asta într-un alt moment) au devenit numele coloanelor când am importat datele. Apropo, acest tip de informații se numește „metadate”, un cuvânt cu un sunet geek care înseamnă practic „date despre date”. Dacă „Lizzy cântă la chitară” este o bucată de date, atunci „membrii familiei cântă la instrumente” este o parte de metadate.

În al doilea rând, nu ratați finalul pe care l-am lipit de linia read_csv(), unde am apelat metoda .set_index() pe DataFrame. Acest lucru îi spune lui Pandas că una dintre coloanele din DataFrame ar trebui desemnată ca index (sau cheie).

Înapoi la 7.1 Tipuri de date agregate. Am afirmat că, spre deosebire de matricele asociative, matricele nu aveau chei. Și asta este adevărat pentru conceptul general de „tabel”. Dar Panda și-au proiectat DataFrame-ul să se comporte în același mod ca Seriile lor: o coloană cu valoare unică va fi folosită pentru a identifica fiecare rând.

Această alegere este de obicei ușoară; dacă aruncați o privire înapoi la Figura 7.3 (7.1 Tipuri de date agregate), probabil că am dori să alegem numele de ecran ca index (deși ar putea fi făcut în schimb un caz pentru coloana cu numele real). Pentru tabelul din Figura 7.4 (7.2 Date agregate și imagini ale memoriei), ar putea fi coloana cu articole. În DataFrame pe care tocmai l-am creat mai sus, evident că persoana este alegerea corectă – este cu siguranță singura unică. (1)

Oricum, desemnarea unei coloane ca index în acest fel o elimină din celelalte coloane „obișnuite”. În rezultatul de mai sus, este posibil să observați că cuvântul „person” este tipărit oarecum mai jos decât sunt numele celorlalte coloane. Se pare că, dacă vrem să vorbim despre coloana index în mod specific, va trebui să folosim o tehnică puțin diferită decât o facem pentru celelalte coloane.

În cele din urmă, rețineți că apelarea .set_index() este opțională. Este perfect să apelezi pd.read_csv() și să lași așa. În acest caz, Pandas va folosi numere întregi (începând cu 0, desigur) ca index/cheie.

(1) Cu scuze pentru legenda boxului George Foreman, care i-a numit pe toți cei patru fii ai săi „George”.

Sursa: Stephen Davies, The Crystal Ball – Instruction Manual, Vol. 1: Introduction to Data Science, v. 1.1. Copyright © 2021 Stephen Davies. Licența CC BY-SA 4.0. Traducere și adaptare: Nicolae Sfetcu. © 2024 MultiMedia Publishing, Introducere în Știința Datelor, Volumul 1

Etica Big Data în cercetare
Etica Big Data în cercetare

O explorare critică a provocărilor etice și a implicațiilor legale asociate Big Data.

Nu a fost votat Interval de prețuri: 0.00 lei până la 10.80 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.
Lucrul cu baze de date
Lucrul cu baze de date

Descoperă puterea bazelor de date cu acest ghid complet.

Nu a fost votat Interval de prețuri: 18.33 lei până la 36.71 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.
Analitica rețelelor sociale
Analitica rețelelor sociale

Descoperă puterea datelor și transformă modul în care înțelegi și utilizezi rețelele sociale.

Nu a fost votat Interval de prețuri: 18.33 lei până la 44.15 lei Selectează opțiunile Acest produs are mai multe variații. Opțiunile pot fi alese în pagina produsului.


Descoperă mai multe la MultiMedia

Abonează-te ca să primești ultimele articole prin email.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *