logo

Concatenazione dei panda

Pandas è in grado di combinare oggetti Series, DataFrame e Panel attraverso diversi tipi di logica di insieme per gli indici e la funzionalità di algebra relazionale.

IL concat() la funzione è responsabile dell'esecuzione dell'operazione di concatenazione lungo un asse nel DataFrame.

Sintassi:

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

parametri:

    oggetti:È una sequenza o mappatura di serie o oggetti DataFrame.
    Se passiamo un dict nel DataFrame, le chiavi ordinate verranno utilizzate come file argomento keys e in questo caso i valori verranno selezionati. Se sono presenti non-oggetti, verrà eliminato a meno che non siano tutti nessuno e, in questo caso, a ValoreErrore verrà sollevato.asse:È un asse lungo il quale concatenarsi.giuntura:Responsabile della gestione degli indici su un altro asse.unisci_assi:Un elenco di oggetti indice. Invece di eseguire la logica dell'insieme interno o esterno, vengono utilizzati indici specifici per l'altro asse (n-1).ignora_indice:bool, valore predefinito False
    Non utilizza i valori dell'indice sull'asse di concatenazione, se vero. L'asse risultante verrà etichettato come 0, ..., n - 1.

ritorna

Viene restituita una serie quando concateniamo tutte le serie lungo l'asse (asse=0). Nel caso in cui obj contiene almeno un DataFrame, restituisce un DataFrame.

Esempio 1:

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

Produzione

 0 p 1 q 0 r 1 s dtype: object 

Esempio2: Nell'esempio precedente, possiamo reimpostare l'indice esistente utilizzando il comando ignora_indice parametro. Il codice seguente dimostra il funzionamento di ignora_indice .

 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) 

Produzione

 0 p 1 q 2 r 3 s dtype: object 

Esempio 3: Possiamo aggiungere un indice gerarchico al livello più esterno dei dati utilizzando il file chiavi parametro.

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

Produzione

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

Esempio 4: Possiamo etichettare le chiavi dell'indice utilizzando il comando nomi parametro. Il codice seguente mostra il funzionamento del parametro dei nomi.

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

Produzione

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

Concatenazione utilizzando l'aggiunta

Il metodo append è definito come una scorciatoia utile per concatenare Series e DataFrame.

Esempio:

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

Produzione

 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