Adăugați Dict la DataFrame în Pandas

Adaugati Dict La Dataframe In Pandas



Vom discuta cum să atașăm un dicționar la Pandas DataFrame existent folosind funcțiile pandas.DataFrame.append() și pandas.concat() cu exemple. Aici, dicționarul se referă la perechea cheie:valoare, astfel încât cheia se referă la etichetele coloanelor existente care sunt prezente în DataFrame și valorile sunt adăugate într-un rând. De asemenea, vom vedea exemplele care atașează mai multe dicționare la Pandas DataFrame.

Folosind Pandas.DataFrame.Append

Funcția pandas.DataFrame.append() este utilizată pentru a atașa rândurile altui DataFrame la DataFrame-ul existent. Dacă coloanele din DataFrame existent nu există, celelalte coloane DataFrame sunt create în DataFrame existent. Utilizați această funcție în așa fel încât rândul să fie inserat în DataFrame prin adăugarea dicționarului.

Sintaxă :







Următoarea este sintaxa reală a funcției pandas.DataFrame.append():



panda. DataFrame . adăuga ( alte , ignore_index , verifica_integritatea , fel )
  1. alte : Aceasta se referă la un alt DataFrame în care rândurile acestui DataFrame sunt atașate la DataFrame existent. Dacă doriți să adăugați un singur rând, trebuie să treceți un dicționar de valori ca parametru.
  2. ignore_index (în mod implicit = Fals): Acest parametru este utilizat atunci când adăugați rânduri la DataFrame care are deja rânduri. Dacă este „False”, sunt atașați și indicii de rânduri existenți. Dacă este „Adevărat”, rândurile sunt etichetate de la 0 la n-1. Asigurați-vă că acest parametru este setat la „True” în timp ce adăugați un dicționar la DataFrame. În caz contrar, apare un tip de eroare – „TypeError: Se poate adăuga un dict numai dacă ignore_index=True”.
  3. Putem verifica indicii duplicați folosind parametrul verify_integrity (implicit = False). Dacă indicii sunt duplicați și verifica_integrity este setat la „True”, acesta returnează „ValueError: Indecii au valori care se suprapun”.
  4. Este posibil să sortați coloanele dacă coloanele DataFrame-ului existent și alt DataFrame nu sunt aliniate folosind parametrul de sortare setându-l la „True” (în mod implicit = False).

Exemplul 1: Adăugați un singur dicționar

Creați un Pandas DataFrame cu patru coloane – „Campaign_Name”, „Location”, „StartDate” și „Buget” – și trei rânduri. Adăugați un dicționar la acest DataFrame.



import panda

# Create DataFrame - Campanie cu 4 coloane și 3 rânduri
Campanie = panda. DataFrame ( [ [ „Tabără de marketing” , 'India' , „01.12.2023” , 8000 ] ,
[ „Tabără de vânzări” , 'Italia' , „25.01.2022” , 10000 ] ,
[ „Altă tabără” , 'STATELE UNITE ALE AMERICII' , '17.04.2023' , 2000 ] ] ,
coloane = [ 'Denumirea campaniei' , 'Locație' , 'Data de început' , 'Buget' ] )
imprimare ( Campanie , ' \n ' )

# Adăugați un singur rând
Campanie = Campanie. adăuga ( { 'Denumirea campaniei' : „Tabăra tehnică” , 'Locație' : 'STATELE UNITE ALE AMERICII' , 'Data de început' : „05.12.2023” , 'Buget' : 2000 } , ignore_index = Adevărat )
imprimare ( Campanie , ' \n ' )

Ieșire :





Putem vedea că dicționarul este atașat la Cadrul de date „Campanie”. Indicele acestui nou rând este 3, deoarece indicele este ignorat.



Exemplul 2: Adăugați mai multe dicționare

Utilizați același DataFrame care este creat în Exemplul 1 și adăugați trei rânduri la un moment dat folosind funcția pandas.DataFrame.append(). Setați parametrul ignore_index la „True”.

import panda

# Create DataFrame - Campanie cu 4 coloane și 3 rânduri
Campanie = panda. DataFrame ( [ [ „Tabără de marketing” , 'India' , „01.12.2023” , 8000 ] ,
[ „Tabără de vânzări” , 'Italia' , „25.01.2022” , 10000 ] ,
[ „Altă tabără” , 'STATELE UNITE ALE AMERICII' , '17.04.2023' , 2000 ] ] ,
coloane = [ 'Denumirea campaniei' , 'Locație' , 'Data de început' , 'Buget' ] )
imprimare ( Campanie , ' \n ' )

Campanie = Campanie. adăuga ( { 'Denumirea campaniei' : „Tabăra tehnică” , 'Locație' : 'STATELE UNITE ALE AMERICII' , 'Data de început' : „05.12.2023” , 'Buget' : 2000 } , ignore_index = Adevărat )
Campanie = Campanie. adăuga ( { 'Denumirea campaniei' : „Tabără de marketing” , 'Locație' : 'India' , 'Data de început' : '23.06.2023' , 'Buget' : 9000 } , ignore_index = Adevărat )
Campanie = Campanie. adăuga ( { 'Denumirea campaniei' : „Tabără de vânzări MS” , 'Locație' : 'Italia' , 'Data de început' : „24.01.2023” , 'Buget' : 1200 } , ignore_index = Adevărat )
imprimare ( Campanie )

Ieșire :

Trei rânduri sunt atașate unul după altul cu 3, 4 și 5 indici la DataFrame-ul existent.

Folosind Pandas.Concat

Funcția pandas.concat() concatenează două sau mai multe DataFrames de-a lungul rândurilor sau coloanelor. Deci, trebuie să transformăm dicționarul în DataFrame și să transmitem două DataFrame acestei funcție.

Sintaxă :

Adăugați un dicționar la DataFrame existent:

panda. concat ( [ Existing_DataFrame , Transformed_Dictionary ] , axă = 0 , ignore_index , verifica_integritatea )
  1. Dacă axa = 0, concatenarea se face de-a lungul rândurilor. Concatenarea se face de-a lungul coloanelor dacă este setată Aplicarea majusculelor necesare deoarece acesta este un subtitlu. S-a adăugat articolul necesar pentru concizie.la 1.
  2. ignore_index (în mod implicit = False): Acest parametru este utilizat atunci când adăugați rândurile la DataFrame care are deja rânduri. Dacă este „False”, sunt atașați și indicii de rânduri existenți. Dacă este „Adevărat”, rândurile sunt etichetate de la 0 la n-1.
  3. Putem verifica indicii duplicați folosind parametrul verify_integrity (implicit = False). Dacă indicii sunt duplicați și verifica_integrity este setat la „True”, acesta returnează „ValueError: Indecii au valori care se suprapun”.

Exemplul 1: Adăugați un singur dicționar

Creați un Pandas DataFrame cu patru coloane – „Campaign_Name”, „Location”, „StartDate” și „Buget” – și trei rânduri. Folosind funcția pandas.concat(), adăugați un dicționar (DataFrame) ca rând la acest DataFrame.

import panda


# Create DataFrame - Campanie cu 4 coloane și 3 rânduri
Campanie = panda. DataFrame ( [ [ „Tabără de marketing” , 'India' , „01.12.2023” , 8000 ] ,
[ „Tabără de vânzări” , 'Italia' , „25.01.2022” , 10000 ] ,
[ „Altă tabără” , 'STATELE UNITE ALE AMERICII' , '17.04.2023' , 2000 ] ] ,
coloane = [ 'Denumirea campaniei' , 'Locație' , 'Data de început' , 'Buget' ] )
imprimare ( Campanie , ' \n ' )

Dictionary_from_DataFrame = panda. DataFrame ( [ { 'Denumirea campaniei' : „Tabără de serviciu” , 'Locație' : 'STATELE UNITE ALE AMERICII' , 'Data de început' : '17.04.2023' , 'Buget' : 1000 } ] )

# Adăugați un singur rând
Campanie = panda. concat ( [ Campanie , Dictionary_from_DataFrame ] , axă = 0 )
imprimare ( Campanie , ' \n ' )

Ieșire :

Putem vedea că dicționarul este atașat la Cadrul de date „Campanie”. Indicele acestui nou rând este 0, deoarece indicele nu este ignorat.

Exemplul 2: Adăugați mai multe dicționare

Utilizați DataFrame anterior și adăugați trei dicționare (DataFrame) ignorând indexul.

import panda


# Create DataFrame - Campanie cu 4 coloane și 3 rânduri
Campanie = panda. DataFrame ( [ [ „Tabără de marketing” , 'India' , „01.12.2023” , 8000 ] ,
[ „Tabără de vânzări” , 'Italia' , „25.01.2022” , 10000 ] ,
[ „Altă tabără” , 'STATELE UNITE ALE AMERICII' , '17.04.2023' , 2000 ] ] ,
coloane = [ 'Denumirea campaniei' , 'Locație' , 'Data de început' , 'Buget' ] )
imprimare ( Campanie , ' \n ' )

Dictionary_from_DataFrame = panda. DataFrame ( [ { 'Denumirea campaniei' : „Tech Camp” , 'Locație' : 'STATELE UNITE ALE AMERICII' , 'Data de început' : '17.05.2023' , 'Buget' : 1000 } ,
{ 'Denumirea campaniei' : 'Servicii sociale' , 'Locație' : 'Japonia' , 'Data de început' : '17.04.2023' , 'Buget' : 200 } ,
{ 'Denumirea campaniei' : „Tabără de vânzări” , 'Locație' : 'STATELE UNITE ALE AMERICII' , 'Data de început' : '18.04.2023' , 'Buget' : 500 } ] )

# Adăugați mai multe rânduri
Campanie = panda. concat ( [ Campanie , Dictionary_from_DataFrame ] , axă = 0 , ignore_index = Adevărat )
imprimare ( Campanie , ' \n ' )

Ieșire :

Putem vedea că trei dicționare sunt atașate la Cadrul de date „Campanie”. Indicii acestor dicționare sunt 3, 4 și 5, deoarece parametrul ignore_index este setat la „False”.

Concluzie

Dicționarele unice/multiple sunt atașate la DataFrame folosind funcțiile pandas.DataFrame.append() și pandas.concat(). Indicii noilor rânduri pot fi unici prin setarea parametrului ignore_index la „True” în funcția pandas.concat(). În timp ce utilizați funcția pandas.DataFrame.append(), setați parametrul ignore_index la „True”. În caz contrar, TypeError este ridicată.