Pandas is in staat Series-, DataFrame- en Panel-objecten te combineren via verschillende soorten setlogica voor de indexen en de relationele algebra-functionaliteit.
De concat() functie is verantwoordelijk voor het uitvoeren van aaneenschakelingsbewerkingen langs een as in het DataFrame.
Syntaxis:
pd.concat(objs,axis=0,join='outer',join_axes=None, ignore_index=False)
Parameters:
Als we een dictaat in het DataFrame doorgeven, worden de gesorteerde sleutels gebruikt als key argument, en de waarden worden in dat geval geselecteerd. Als er niet-objecten aanwezig zijn, wordt dit verwijderd, tenzij het allemaal geen objecten zijn, en in dit geval: a Waardefout zal worden verhoogd.
Indien waar, worden de indexwaarden op de aaneenschakelingsas niet gebruikt. De resulterende as krijgt het label 0, ..., n - 1.
Geeft terug
Er wordt een reeks geretourneerd wanneer we alle reeksen langs de as samenvoegen (as = 0). In het geval als obj's minstens één DataFrame bevat, retourneert het een DataFrame.
Voorbeeld 1:
import pandas as pd a_data = pd.Series(['p', 'q']) b_data = pd.Series(['r', 's']) pd.concat([a_data, b_data])
Uitvoer
0 p 1 q 0 r 1 s dtype: object
Voorbeeld2: In het bovenstaande voorbeeld kunnen we de bestaande index opnieuw instellen met behulp van de negeer_index parameter. De onderstaande code demonstreert de werking van negeer_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)
Uitvoer
0 p 1 q 2 r 3 s dtype: object
Voorbeeld 3: We kunnen een hiërarchische index toevoegen op het buitenste niveau van de gegevens door gebruik te maken van de sleutels parameter.
beperkingen van elektronisch bankieren
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'])
Uitvoer
a_data 0 p 1 q b_data 0 r 1 s dtype: object
Voorbeeld 4: We kunnen de indexsleutels labelen met behulp van de namen parameter. De onderstaande code toont de werking van de parameter Namen.
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'])
Uitvoer
Series name Row ID a_data 0 p 1 q b_data 0 r 1 s dtype: object
Concatenatie met behulp van append
De append-methode wordt gedefinieerd als een handige snelkoppeling om de Series en DataFrame aan elkaar te koppelen.
Voorbeeld:
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))
Uitvoer
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