Dodajte Dict u DataFrame u Pandas

Dodajte Dict U Dataframe U Pandas



Raspravljat ćemo o tome kako dodati rječnik postojećem Pandas DataFrameu pomoću funkcija pandas.DataFrame.append() i pandas.concat() s primjerima. Ovdje se rječnik odnosi na par ključ:vrijednost tako da se ključ odnosi na postojeće oznake stupaca koji su prisutni u DataFrameu, a vrijednosti se dodaju u nizu. Također, vidjet ćemo primjere koji dodaju više rječnika u Pandas DataFrame.

Korištenje Pandas.DataFrame.Append

Funkcija pandas.DataFrame.append() koristi se za dodavanje redaka drugog DataFramea u postojeći DataFrame. Ako stupci u postojećem DataFrameu ne postoje, drugi DataFrame stupci stvaraju se u postojećem DataFrameu. Koristite ovu funkciju na takav način da se red mora umetnuti u DataFrame dodavanjem rječnika.

Sintaksa :







Slijedi stvarna sintaksa funkcije pandas.DataFrame.append():



pande. DataFrame . dodati ( drugo , indeks_ignoriranja , potvrdi_integritet , vrsta )
  1. drugo : Ovo se odnosi na drugi DataFrame u kojem su retci ovog DataFramea dodani postojećem DataFrameu. Ako želite dodati jedan redak, trebate proslijediti rječnik vrijednosti kao parametar.
  2. indeks_ignoriranja (prema zadanim postavkama = False): ovaj se parametar koristi kada dodajete retke u DataFrame koji već ima retke. Ako je 'False', dodaju se i indeksi postojećih redaka. Ako je 'Istina', redovi su označeni od 0 do n-1. Provjerite je li ovaj parametar postavljen na 'True' dok dodajete rječnik u DataFrame. U suprotnom, javlja se vrsta pogreške – “TypeError: Dikt se može dodati samo ako je ignore_index=True”.
  3. Duplicirane indekse možemo provjeriti pomoću parametra verify_integrity (prema zadanim postavkama = False). Ako su indeksi duplikati i verify_integrity je postavljen na 'True', vraća 'ValueError: Indeksi imaju preklapajuće vrijednosti'.
  4. Moguće je sortirati stupce ako stupci postojećeg DataFramea i drugog DataFramea nisu poravnati pomoću parametra sortiranja postavljanjem na 'True' (prema zadanim postavkama = False).

Primjer 1: Dodavanje jednog rječnika

Napravite Pandas DataFrame s četiri stupca – “Campaign_Name”, “Location”, “StartDate” i “Budget” – i tri retka. Dodajte rječnik ovom DataFrameu.



uvoz pande

# Stvorite DataFrame - Kampanja s 4 stupca i 3 retka
Kampanja = pande. DataFrame ( [ [ 'Marketinški kamp' , 'Indija' , '01/12/2023' , 8000 ] ,
[ 'Prodajni kamp' , 'Italija' , '25.01.2022' , 10000 ] ,
[ 'Drugi kamp' , 'SAD' , '17.4.2023' , 2000. godine ] ] ,
stupci = [ 'Campaign_Name' , 'Mjesto' , 'Početni datum' , 'Proračun' ] )
ispisati ( Kampanja , ' \n ' )

# Dodavanje jednog retka
Kampanja = Kampanja. dodati ( { 'Campaign_Name' : 'Tehnički kamp' , 'Mjesto' : 'SAD' , 'Početni datum' : '05/12/2023' , 'Proračun' : 2000. godine } , indeks_ignoriranja = Pravi )
ispisati ( Kampanja , ' \n ' )

Izlaz :





Vidimo da je rječnik pridodan DataFrameu “Campaign”. Indeks ovog novog retka je 3 jer se indeks zanemaruje.



Primjer 2: Dodavanje više rječnika

Upotrijebite isti DataFrame koji je stvoren u primjeru 1 i dodajte tri retka odjednom pomoću funkcije pandas.DataFrame.append(). Postavite parametar ignore_index na 'True'.

uvoz pande

# Stvorite DataFrame - Kampanja s 4 stupca i 3 retka
Kampanja = pande. DataFrame ( [ [ 'Marketinški kamp' , 'Indija' , '01/12/2023' , 8000 ] ,
[ 'Prodajni kamp' , 'Italija' , '25.01.2022' , 10000 ] ,
[ 'Drugi kamp' , 'SAD' , '17.4.2023' , 2000. godine ] ] ,
stupci = [ 'Campaign_Name' , 'Mjesto' , 'Početni datum' , 'Proračun' ] )
ispisati ( Kampanja , ' \n ' )

Kampanja = Kampanja. dodati ( { 'Campaign_Name' : 'Tehnički kamp' , 'Mjesto' : 'SAD' , 'Početni datum' : '05/12/2023' , 'Proračun' : 2000. godine } , indeks_ignoriranja = Pravi )
Kampanja = Kampanja. dodati ( { 'Campaign_Name' : 'Marketinški kamp' , 'Mjesto' : 'Indija' , 'Početni datum' : '23.06.2023' , 'Proračun' : 9000 } , indeks_ignoriranja = Pravi )
Kampanja = Kampanja. dodati ( { 'Campaign_Name' : 'MSales kamp' , 'Mjesto' : 'Italija' , 'Početni datum' : '24.01.2023' , 'Proračun' : 1200 } , indeks_ignoriranja = Pravi )
ispisati ( Kampanja )

Izlaz :

Tri retka dodaju se jedan za drugim s 3, 4 i 5 indeksa u postojeći DataFrame.

Korištenje Pandas.Concat

Funkcija pandas.concat() povezuje dva ili više okvira podataka duž redaka ili stupaca. Dakle, trebamo transformirati rječnik u DataFrame i proslijediti dva DataFramea ovoj funkciji.

Sintaksa :

Dodavanje rječnika u postojeći DataFrame:

pande. concat ( [ Postojeći_okvir podataka , Transformirani_Rječnik ] , os = 0 , indeks_ignoriranja , potvrdi_integritet )
  1. Ako je os = 0, ulančavanje se vrši duž redaka. Ulančavanje se vrši uzduž stupaca ako je postavljeno Primijenjena potrebna velika slova jer je ovo podnaslov. Dodan neophodan članak radi sažetosti u 1.
  2. Ignore_index (prema zadanim postavkama = False): ovaj parametar se koristi kada dodajete retke u DataFrame koji već ima retke. Ako je 'False', dodaju se i indeksi postojećih redaka. Ako je 'Istina', redovi su označeni od 0 do n-1.
  3. Duplicirane indekse možemo provjeriti pomoću parametra verify_integrity (prema zadanim postavkama = False). Ako su indeksi duplikati i verify_integrity je postavljen na 'True', vraća 'ValueError: Indeksi imaju preklapajuće vrijednosti'.

Primjer 1: Dodavanje jednog rječnika

Napravite Pandas DataFrame s četiri stupca – “Campaign_Name”, “Location”, “StartDate” i “Budget” – i tri retka. Pomoću funkcije pandas.concat() dodajte jedan rječnik (DataFrame) kao red u ovaj DataFrame.

uvoz pande


# Stvorite DataFrame - Kampanja s 4 stupca i 3 retka
Kampanja = pande. DataFrame ( [ [ 'Marketinški kamp' , 'Indija' , '01/12/2023' , 8000 ] ,
[ 'Prodajni kamp' , 'Italija' , '25.01.2022' , 10000 ] ,
[ 'Drugi kamp' , 'SAD' , '17.4.2023' , 2000. godine ] ] ,
stupci = [ 'Campaign_Name' , 'Mjesto' , 'Početni datum' , 'Proračun' ] )
ispisati ( Kampanja , ' \n ' )

rječnik_iz_DataFrame = pande. DataFrame ( [ { 'Campaign_Name' : 'Uslužni kamp' , 'Mjesto' : 'SAD' , 'Početni datum' : '17.4.2023' , 'Proračun' : 1000 } ] )

# Dodavanje jednog retka
Kampanja = pande. concat ( [ Kampanja , rječnik_iz_DataFrame ] , os = 0 )
ispisati ( Kampanja , ' \n ' )

Izlaz :

Vidimo da je rječnik pridodan DataFrameu “Campaign”. Indeks ovog novog retka je 0 budući da se indeks ne zanemaruje.

Primjer 2: Dodavanje više rječnika

Upotrijebite prethodni DataFrame i dodajte tri rječnika (DataFrame) ignorirajući indeks.

uvoz pande


# Stvorite DataFrame - Kampanja s 4 stupca i 3 retka
Kampanja = pande. DataFrame ( [ [ 'Marketinški kamp' , 'Indija' , '01/12/2023' , 8000 ] ,
[ 'Prodajni kamp' , 'Italija' , '25.01.2022' , 10000 ] ,
[ 'Drugi kamp' , 'SAD' , '17.4.2023' , 2000. godine ] ] ,
stupci = [ 'Campaign_Name' , 'Mjesto' , 'Početni datum' , 'Proračun' ] )
ispisati ( Kampanja , ' \n ' )

rječnik_iz_DataFrame = pande. DataFrame ( [ { 'Campaign_Name' : 'Tehnički kamp' , 'Mjesto' : 'SAD' , 'Početni datum' : '17.5.2023' , 'Proračun' : 1000 } ,
{ 'Campaign_Name' : 'Socijalne službe' , 'Mjesto' : 'Japan' , 'Početni datum' : '17.4.2023' , 'Proračun' : 200 } ,
{ 'Campaign_Name' : 'Prodajni kamp' , 'Mjesto' : 'SAD' , 'Početni datum' : '18.04.2023' , 'Proračun' : 500 } ] )

# Dodavanje više redaka
Kampanja = pande. concat ( [ Kampanja , rječnik_iz_DataFrame ] , os = 0 , indeks_ignoriranja = Pravi )
ispisati ( Kampanja , ' \n ' )

Izlaz :

Možemo vidjeti da su tri rječnika dodana DataFrameu “Campaign”. Indeksi ovih rječnika su 3, 4 i 5 budući da je parametar ignore_index postavljen na 'False'.

Zaključak

Pojedinačni/višestruki rječnici dodaju se DataFrameu pomoću funkcija pandas.DataFrame.append() i pandas.concat(). Indeksi novih redaka mogu biti jedinstveni postavljanjem parametra ignore_index na 'True' u funkciji pandas.concat(). Dok koristite funkciju pandas.DataFrame.append(), postavite parametar ignore_index na 'True'. Inače se javlja TypeError.