Pandas în dicţionar

Pandas In Dictionar



„În Python, o structură de date numită dicționar este folosită pentru a stoca informații ca perechi cheie-valoare. Obiectele dicționarului sunt optimizate pentru a extrage date/valori atunci când cheia sau cheile sunt cunoscute. Rețineți că dicționarele pot include chei duplicate. Pentru a găsi eficient valori folosind indexul aferent, putem converti o serie Pandas sau un cadru de date cu un index relevant într-un obiect dicționar cu perechi cheie-valoare „index: valoare”. Pentru a realiza această sarcină, poate fi folosită metoda „to_dict()”. Această funcție este o funcție încorporată care se găsește în clasa Series a modulului panda. Un cadru de date este convertit într-un dicționar de serie de date asemănător unei liste Python folosind metoda pandas.to_dict(), în funcție de valoarea specificată a parametrului orient.”

Cum se transformă panda într-un dicționar Python?

Există mai multe metode de a converti panda într-un dicționar. Cu toate acestea, pentru a transforma un cadru de date Pandas într-un dicționar Python, vom folosi metoda to_dict() în Pandas. Putem orienta perechile cheie-valoare ale dicționarului returnat într-o varietate de moduri folosind funcția to_dict(). Sintaxa funcției este următoarea:







Sintaxă



panda.to_dict ( est = „dict”, în = )



Parametrii

orienta: Ce tip de date în care să se convertească coloanele (seria) este specificat de valoarea șirului („dict”, „listă”, „înregistrări”, „index”, „serie”, „split”). De exemplu, cuvântul cheie „listă” ar oferi un dicționar python de obiecte listă cu cheile „Nume coloană” și „Lista” (serie convertită) ca rezultat.





în: clasa, poate fi transmisă ca o instanță sau o clasă reală. De exemplu, o instanță de clasă poate fi transmisă în cazul unui dict implicit. Valoarea implicită a parametrului este dict.

Tip de returnare: Dicționar convertit dintr-un cadru de date sau dintr-o serie.



Exemplul # 01: Convertirea cadrului de date Pandas într-un dicționar

Folosind tuplul de liste din funcția pd.DataFrame(), vom crea un cadru de date de bază cu câteva coloane și rânduri pentru a-l putea converti ulterior într-un dicționar python.


Am creat cadrul nostru de date trecând lista în interiorul funcției pd.DataFrame(). În cadrul de date de mai sus, avem trei coloane „companie”, „vânzări” și „venituri”. În coloana companie, am stocat numele companiilor aleatorii ca ('A&B', 'Max_tech', 'XT', 'MJ', 'Quanto', 'Mini_X', 'Zomo', 'AU', 'HL' , „ZMX”, „Earny”), coloana „vânzări” reprezintă vânzările fiecărei companii ca (“217”, „200”, „199”, „150”, „210”, „216”, „185 ”, „189”, „202”, „159”, „205”) și coloana „venit” stochează valorile reprezentând venitul fiecărei companii în raport cu vânzările respective (340000   320000  300000 270000  315000  315000  335000  335000  335000  335000  0 5 0 0 0 5 0 0 0 0 0 2 305000). Acum vom converti cadrul nostru de date „df” într-un dicționar python.


Aplicând metoda to_dict() la cadrul de date df, am convertit un cadru de date Pandas într-un dicționar.

Exemplul # 02: Convertirea cadrului de date Pandas creat dintr-un fișier CSV într-un dicționar

În exemplul # 1, am creat un cadru de date folosind tupluri în interiorul listei. Acum vom crea un cadru de date cu ajutorul unui fișier CSV, apoi îl vom converti într-un dicționar folosind funcția to_dict().


Pentru a citi un fișier ca cadru de date, am folosit funcția pd.read_csv(). În cadrul de date de mai sus, avem două coloane (Nume și Marks) și șaptesprezece rânduri (de la 0 la 16). Acum vom folosi metoda to_dict().


Funcția a convertit cadrul nostru de date „df” într-un dicționar python.

Exemplul # 03: Convertiți Pandas Dataframe în dicționarul care conține listele de valori

În exemplele anterioare, am convertit panda într-un dicționar python care conține mai multe dicționare. Când convertiți un cadru de date într-un obiect dicționar, etichetele coloanelor ar trebui să servească drept chei ale dicționarului, iar toate datele sau valorile coloanelor ar trebui adăugate la dicționarul rezultat ca o listă de valori pentru fiecare cheie.


Am creat cadrul de date având trei coloane „nume”, „țară” și „vârstă”. În coloana „nume”, am stocat valorile datelor („Anna”, „Marty”, „Carl”, „Mary”, „Cleb”, „Ali”, „Alexa”, „Becky”, „Ryan”) . În timp ce celelalte coloane țara și vârsta sunt valori puternice precum („SUA”, „Anglia”, „SUA”, „Franța”, „Rusia”, „Rusia”, „Franța”, „Anglia”, „SUA”) și ( 34, 32, 30, 27, 31, 33, 35, 25, 30) respectiv. Vom crea un dicționar care să conțină listele folosind parametrul „list” din cadrul metodei to_dict().


Folosind parametrul list ca argument în interiorul funcției to_list(), am generat un dicționar care conține mai multe liste.

Exemplul # 03: Convertiți Pandas Dataframe în dicționarul care conține seria de valori

Când un DataFrame trebuie transformat într-un dicționar, numele coloanei servește ca chei de dicționar și indexul de rând și datele din coloană ca valoare pentru cheile corespunzătoare din dicționar.


Am creat cadrul de date necesar folosind metoda pd.DataFrame(). În cadrul de date creat recent, avem două coloane. Coloana nume stochează valorile datelor sub formă de șir („Kim”, „Morris”, „Casper”, „Milli”, „Dave”, „Will”, „Billy”), în timp ce coloanele cu semne constau din date numerice ca ( 8, 9, 6, 7, 10, 7, 8). Vom folosi parametrul „serie” ca șir în interiorul funcției to_dict().

Exemplul # 04: Convertiți Pandas Dataframe în dicționar fără index și antet

Parametrul „split” al funcției to_dict() poate fi folosit pentru a extrage date dintr-un DataFrame fără antetele coloanelor sau atunci când trebuie să eliminam antetul și indexul de rând din date. Etichetele coloanelor, indexul rândurilor și datele reale sunt împărțite în trei componente folosind acest parametru. Să creăm un cadru de date, astfel încât să îl putem împărți în trei părți în timp ce îl convertim în dicționar.


Am creat două coloane cu etichete „nume” și „vârstă” care conțin valori („Dave”, „Morris”, „Billy”, „Milli”, „Kim”, „Will”, „Casper”) și (19, 19). , 25, 21, 19, 21, 23) respectiv. Să le convertim în dicționare Python.


Folosind cheia „date”, putem prelua datele din dicționarul rezultat fără un index sau antet.

Exemplul # 05: Convertiți Pandas Dataframe în dicționar după rând și index de rând

Parametrul „record” poate fi utilizat în cadrul funcției to_dict() pentru a stoca datele fiecărui rând de cadru de date în mai multe obiecte de dicționar distincte în interiorul unei liste sau atunci când sunt necesare date pe rând. Va fi returnată o listă care conține obiecte dicționar. Un dicționar cu o etichetă de coloană ca cheie și date de coloană ca valoare pentru fiecare rând.


Am creat un cadru de date cu coloanele „nume” și „salariu”. Coloana „nume” conține valorile datelor („Leo”, „Haris”, „Wanda”, „Mike”, „Kelly”, „Adam”, „Jack”), iar coloana de salarii stochează valorile (12000, 12500). , 14000, 11000, 12000, 13000, 12500). Acum să creăm o listă cu mai multe dicționare Python care conțin date pentru fiecare rând.


Parametrul index poate fi folosit și pentru a converti datele fiecărui rând dintr-un cadru de date într-un dicționar. Va fi returnată o listă care conține elemente de dicționar. Fiecare rând generează un dicționar. Unde indexul de rând va fi cheia, iar valoarea va fi dicționarul de date și eticheta coloanei.

Concluzie

În acest tutorial, am discutat cum putem converti obiectele cadru de date sau panda într-un dicționar Python. Am văzut sintaxa funcției to_dict() pentru a înțelege parametrii acestei funcții și cum puteți modifica rezultatul funcției prin specificarea funcției cu diferiți parametri. În exemplele acestui tutorial, am folosit metoda to_dict(), o funcție încorporată pentru panda, pentru a schimba obiectele panda în dicționarul python.