logo

Sammenkædning af pandaer

Pandas er i stand til at kombinere Series-, DataFrame- og Panel-objekter gennem forskellige former for sætlogik for indekserne og den relationelle algebra-funktionalitet.

Det concat() funktion er ansvarlig for at udføre sammenkædningsoperation langs en akse i DataFrame.

Syntaks:

 pd.concat(objs,axis=0,join='outer',join_axes=None, ignore_index=False) 

Parametre:

    objs:Det er en sekvens eller kortlægning af serier eller DataFrame-objekter.
    Hvis vi sender en diktat i DataFrame, vil de sorterede nøgler blive brugt som keys-argumentet, og værdierne vil i så fald blive valgt. Hvis der er nogen ikke-objekter til stede, vil de blive slettet, medmindre de alle er ingen, og i dette tilfælde en ValueError vil blive hævet.akse:Det er en akse at sammenkæde langs.tilslutte:Ansvarlig for håndtering af indekser på en anden akse.join_axes:En liste over indeksobjekter. I stedet for at udføre den indre eller ydre sætlogik, bruges specifikke indekser til den anden (n-1) akse.ignore_index:bool, standardværdi False
    Den bruger ikke indeksværdierne på sammenkædningsaksen, hvis sandt. Den resulterende akse vil blive mærket som 0, ..., n - 1.

Vender tilbage

En serie returneres, når vi sammenkæder alle serierne langs aksen (akse=0). I tilfælde af hvis objs indeholder mindst én DataFrame, returnerer den en DataFrame.

Eksempel 1:

 import pandas as pd a_data = pd.Series(['p', 'q']) b_data = pd.Series(['r', 's']) pd.concat([a_data, b_data]) 

Produktion

 0 p 1 q 0 r 1 s dtype: object 

Eksempel 2: I ovenstående eksempel kan vi nulstille det eksisterende indeks ved at bruge ignore_index parameter. Nedenstående kode demonstrerer virkemåden af ignore_index .

 import pandas as pd a_data = pd.Series(['p', 'q']) b_data = pd.Series(['r', 's']) pd.concat([a_data, b_data], ignore_index=True) 

Produktion

 0 p 1 q 2 r 3 s dtype: object 

Eksempel 3: Vi kan tilføje et hierarkisk indeks på det yderste niveau af dataene ved at bruge nøgler parameter.

 import pandas as pd a_data = pd.Series(['p', 'q']) b_data = pd.Series(['r', 's']) pd.concat([a_data, b_data], keys=['a_data', 'b_data']) 

Produktion

 a_data 0 p 1 q b_data 0 r 1 s dtype: object 

Eksempel 4: Vi kan mærke indekstasterne ved at bruge navne parameter. Nedenstående kode viser funktionen af ​​navne parameter.

 import pandas as pd a_data = pd.Series(['p', 'q']) b_data = pd.Series(['r', 's']) pd.concat([a_data, b_data], keys=['a_data', 'b_data']) pd.concat([a_data, b_data], keys=['a_data', 'b_data'], names=['Series name', 'Row ID']) 

Produktion

 Series name Row ID a_data 0 p 1 q b_data 0 r 1 s dtype: object 

Sammenkædning ved hjælp af append

Append-metoden er defineret som en nyttig genvej til at sammenkæde Series og DataFrame.

Eksempel:

 import pandas as pd one = pd.DataFrame({ 'Name': ['Parker', 'Smith', 'Allen', 'John', 'Parker'], 'subject_id':['sub1','sub2','sub4','sub6','sub5'], 'Marks_scored':[98,90,87,69,78]}, index=[1,2,3,4,5]) two = pd.DataFrame({ 'Name': ['Billy', 'Brian', 'Bran', 'Bryce', 'Betty'], 'subject_id':['sub2','sub4','sub3','sub6','sub5'], 'Marks_scored':[89,80,79,97,88]}, index=[1,2,3,4,5]) print (one.append(two)) 

Produktion

 Name subject_id Marks_scored 1 Parker sub1 98 2 Smith sub2 90 3 Allen sub4 87 4 John sub6 69 5 Parker sub5 78 1 Billy sub2 89 2 Brian sub4 80 3 Bran sub3 79 4 Bryce sub6 97 5 Betty sub5 88