logo

Pandas savienošana

Pandas spēj apvienot sēriju, datu rāmja un paneļa objektus, izmantojot dažāda veida kopu loģiku indeksiem un relāciju algebras funkcionalitāti.

The concat () funkcija ir atbildīga par savienošanas darbības veikšanu pa asi DataFrame.

Sintakse:

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

Parametri:

    objs:Tā ir sēriju vai DataFrame objektu secība vai kartēšana.
    Ja DataFrame nododam diktātu, sakārtotās atslēgas tiks izmantotas kā atslēgu arguments, un tādā gadījumā vērtības tiks atlasītas. Ja ir kādi objekti, kas nav objekti, tas tiks atmests, ja vien to visu nav, un šajā gadījumā ValueError tiks paaugstināts.ass:Tā ir ass, kas jāsavieno kopā.pievienoties:Atbildīgs par indeksu apstrādi citā asī.join_axes:Indeksa objektu saraksts. Tā vietā, lai veiktu iekšējo vai ārējo kopu loģiku, konkrēti indeksi tiek izmantoti otrai (n-1) asij.ignore_index:bool, noklusējuma vērtība False
    Tas neizmanto indeksa vērtības savienošanas asī, ja tas ir patiess. Iegūtā ass tiks apzīmēta kā 0, ..., n - 1.

Atgriežas

Sērija tiek atgriezta, kad mēs savienojam visas sērijas gar asi (ass = 0). Gadījumā, ja objs satur vismaz vienu DataFrame, tas atgriež DataFrame.

1. piemērs:

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

Izvade

 0 p 1 q 0 r 1 s dtype: object 

2. piemērs: Iepriekš minētajā piemērā mēs varam atiestatīt esošo indeksu, izmantojot ignore_index parametrs. Zemāk esošais kods parāda, kā darbojas ignore_index .

cik liels ir mans monitors
 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) 

Izvade

 0 p 1 q 2 r 3 s dtype: object 

3. piemērs: Mēs varam pievienot hierarhisku indeksu datu tālākajā līmenī, izmantojot atslēgas parametrs.

 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']) 

Izvade

priekšpasūtīt koka šķērsošanu
 a_data 0 p 1 q b_data 0 r 1 s dtype: object 

4. piemērs: Mēs varam iezīmēt indeksa atslēgas, izmantojot vārdus parametrs. Zemāk redzamais kods parāda parametru nosaukumu darbību.

 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']) 

Izvade

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

Savienošana, izmantojot papildinājumu

Pievienošanas metode ir definēta kā noderīgs īsinājumtaustiņš, lai savienotu Series un DataFrame.

Piemērs:

 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)) 

Izvade

 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