Pandas al diccionari

Pandas Al Diccionari



'A Python, s'utilitza una estructura de dades anomenada diccionari per emmagatzemar informació com a parells clau-valor. Els objectes de diccionari estan optimitzats per extreure dades/valors quan es coneixen la clau o les claus. Tingueu en compte que els diccionaris poden incloure claus duplicades. Per trobar valors de manera eficient amb l'índex relacionat, podem convertir una sèrie de pandas o un marc de dades amb un índex rellevant en un objecte de diccionari amb parells clau-valor 'índex: valor'. Per aconseguir aquesta tasca, es pot utilitzar el mètode 'to_dict()'. Aquesta funció és una funció integrada que es troba a la classe Sèrie del mòdul pandas. Un marc de dades es converteix en un diccionari de dades semblant a una llista de Python mitjançant el mètode pandas.to_dict(), depenent del valor especificat del paràmetre orient.

Com convertir els pandes en un diccionari Python?

Hi ha diversos mètodes per convertir pandes en un diccionari. Tanmateix, per transformar un marc de dades de Pandas en un diccionari de Python, utilitzarem el mètode to_dict() a Pandas. Podem orientar els parells clau-valor del diccionari retornat de diverses maneres utilitzant la funció to_dict(). La sintaxi de la funció és la següent:







Sintaxi



pandas.to_dict ( est = 'dicte', a = )



Paràmetres

orientar: Quin tipus de dades per convertir les columnes (en sèrie) s'especifica pel valor de la cadena ('dict', 'llista', 'registres', 'índex', 'sèrie', 'divisió'). Per exemple, la paraula clau 'llista' donaria un diccionari Python d'objectes de llista amb les claus 'Nom de la columna' i 'Llista' (sèrie convertida) com a sortida.





a: classe, es pot passar com a instància o classe real. Per exemple, es pot passar una instància de classe en el cas d'un dictat predeterminat. El valor predeterminat del paràmetre és dict.

Tipus de retorn: Diccionari convertit a partir d'un marc de dades o sèrie.



Exemple # 01: Convertir el marc de dades Pandas en un diccionari

Utilitzant la tupla de llistes de la funció pd.DataFrame(), crearem un marc de dades bàsic amb algunes columnes i files per poder convertir-lo més tard en un diccionari Python.


Hem creat el nostre marc de dades passant la llista dins de la funció pd.DataFrame(). Al marc de dades anterior, tenim tres columnes 'empresa', 'vendes' i 'ingressos'. A la columna empresa, hem emmagatzemat els noms d'empreses aleatòries com ('A&B', 'Max_tech', 'XT', 'MJ', 'Quanto', 'Mini_X', 'Zomo', 'AU', 'HL' , 'ZMX', 'Guanys'), la columna 'vendes' representa les vendes de cada empresa com ('217', '200', '199', '150', '210', '216', '185'. ”, “189”, “202”, “159”, “205”) i la columna “ingressos” emmagatzemen els valors que representen els ingressos de cada empresa en comparació amb les vendes respectives (340000   320000  300000 270000  315000  315000  335000  335000  335000  0 0 5 0 0 0 0 0 0 0 0 2 305000). Ara convertirem el nostre marc de dades 'df' en un diccionari Python.


En aplicar el mètode to_dict() al marc de dades df, hem convertit un marc de dades pandas en un diccionari.

Exemple # 02: Convertint el marc de dades Pandas creat a partir d'un fitxer CSV en un diccionari

A l'exemple # 1, vam crear un marc de dades utilitzant tuples dins de la llista. Ara crearem un marc de dades amb l'ajuda d'un fitxer CSV, i després el convertirem en un diccionari mitjançant la funció to_dict().


Per llegir un fitxer com a marc de dades, hem utilitzat la funció pd.read_csv(). Al marc de dades anterior, tenim dues columnes (Nom i Marques) i disset files (de 0 a 16). Ara farem servir el mètode to_dict().


La funció ha convertit el nostre marc de dades 'df' en un diccionari Python.

Exemple # 03: Converteix Pandas Dataframe al diccionari que conté les llistes de valors

En els exemples anteriors, hem convertit els pandes en un diccionari Python que conté diversos diccionaris. Quan es converteix un marc de dades en un objecte de diccionari, les etiquetes de les columnes han de servir com a claus del diccionari i totes les dades o valors de les columnes s'han d'afegir al diccionari resultant com a llista de valors per a cada clau.


Hem creat el marc de dades amb tres columnes 'nom', 'país' i 'edat'. A la columna 'nom', hem emmagatzemat els valors de les dades ('Anna', 'Marty', 'Carl', 'Mary', 'Cleb', 'Ali', 'Alexa', 'Becky', 'Ryan') . Mentre que les altres columnes país i edat són valors forts com ('EUA', 'Anglaterra', 'EUA', 'França', 'Rússia', 'Rússia', 'França', 'Anglaterra', 'EUA') i ( 34, 32, 30, 27, 31, 33, 35, 25, 30) respectivament. Crearem un diccionari que contingui les llistes utilitzant el paràmetre 'list' dins del mètode to_dict().


Mitjançant l'ús del paràmetre list com a argument dins de la funció to_list(), hem generat un diccionari que conté diverses llistes.

Exemple # 03: Converteix Pandas Dataframe al diccionari que conté la sèrie de valors

Quan un DataFrame s'ha de transformar en un diccionari, el nom de la columna serveix com a claus del diccionari i l'índex de fila i les dades de la columna com a valor per a les claus corresponents del diccionari.


Hem creat el marc de dades necessari mitjançant el mètode pd.DataFrame(). Al marc de dades recentment creat, tenim dues columnes. La columna del nom emmagatzema els valors de les dades com una cadena ('Kim', 'Morris', 'Casper', 'Milli', 'Dave', 'Will', 'Billy'), mentre que les columnes de marques consisteixen en dades numèriques com ( 8, 9, 6, 7, 10, 7, 8). Utilitzarem el paràmetre 'series' com a cadena dins de la funció to_dict().

Exemple # 04: Converteix Pandas Dataframe al diccionari sense índex i capçalera

El paràmetre 'split' de la funció to_dict() es pot utilitzar per extreure dades d'un DataFrame sense les capçaleres de columnes o quan necessitem eliminar la capçalera i l'índex de fila de les dades. Les etiquetes de columnes, l'índex de files i les dades reals es divideixen en tres components mitjançant aquest paràmetre. Creem un marc de dades, de manera que el podem dividir en tres parts mentre el convertim al diccionari.


Hem creat dues columnes amb etiquetes 'nom' i 'edat' que contenen valors ('Dave', 'Morris', 'Billy', 'Milli', 'Kim', 'Will', 'Casper') i (19, 19). , 25, 21, 19, 21, 23) respectivament. Convertim-los en diccionaris Python.


Utilitzant la clau 'dades', podem recuperar les dades del diccionari resultant sense cap índex ni capçalera.

Exemple # 05: Converteix Pandas Dataframe al Diccionari per fila i índex de fila

El paràmetre 'record' es pot utilitzar dins de la funció to_dict() per emmagatzemar dades de cada fila de dataframe en diversos objectes de diccionari diferents dins d'una llista o quan es requereixen dades per fila. Es retornarà una llista amb objectes de diccionari. Un diccionari amb una etiqueta de columna com a clau i dades de columna com a valor per a cada fila.


Hem creat un marc de dades amb les columnes 'nom' i 'salari'. La columna 'nom' conté els valors de dades ('Leo', 'Haris', 'Wanda', 'Mike', 'Kelly', 'Adam', 'Jack') i la columna de salari emmagatzema els valors (12000, 12500 , 14.000, 11.000, 12.000, 13.000, 12.500). Ara creem una llista amb diversos diccionaris Python que contenen dades de cada fila.


El paràmetre d'índex també es pot utilitzar per convertir les dades de cada fila d'un marc de dades a un diccionari. Es retornarà una llista amb elements del diccionari. Cada fila genera un diccionari. On l'índex de fila serà la clau i el valor serà el diccionari de dades i l'etiqueta de la columna.

Conclusió

En aquest tutorial, hem parlat de com podem convertir el dataframe o els objectes pandas en un diccionari Python. Hem vist la sintaxi de la funció to_dict() per entendre els paràmetres d'aquesta funció i com es pot modificar la sortida de la funció especificant la funció amb diferents paràmetres. En els exemples d'aquest tutorial, hem utilitzat el mètode to_dict(), una funció pandas integrada, per canviar els objectes pandas al diccionari de Python.