Hoe u twee pandas dataframes kunt toevoegen (met voorbeeld)
U kunt de volgende basissyntaxis gebruiken om de waarden toe te voegen aan twee panda’s DataFrames:
df3 = df1. add (df2, fill_value= 0 )
Hierdoor ontstaat een nieuw DataFrame dat de som van de overeenkomende elementen in elk afzonderlijk DataFrame bevat.
Als een element in het ene DataFrame bestaat en niet in het andere, wordt het bestaande element gebruikt in het resulterende DataFrame.
Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.
Voorbeeld: hoe u twee Pandas DataFrames toevoegt
Laten we aannemen dat we de volgende twee panda-dataframes hebben:
import pandas as pd #create first DataFrame df1 = pd. DataFrame ({' points ': [18, 22, 19, 14, 11], ' assists ': [5, 11, 7, 9, 12]}) #view first DataFrame print (df1) assist points 0 18 5 1 22 11 2 19 7 3 14 9 4 11 12 #create second DataFrame df2 = pd. DataFrame ({' points ': [10, 5, 4, 3, 9, 14], ' assists ': [9, 7, 4, 2, 3, 3]}) #view second DataFrame print (df2) assist points 0 10 9 1 5 7 2 4 4 3 3 2 4 9 3 5 14 3
We kunnen de volgende syntaxis gebruiken om een nieuw DataFrame te maken dat de som van de overeenkomende elementen in elk afzonderlijk DataFrame neemt:
#create new DataFrame by adding two DataFrames
df3 = df1. add (df2, fill_value= 0 )
#view new DataFrame
print (df3)
assist points
0 28.0 14.0
1 27.0 18.0
2 23.0 11.0
3 17.0 11.0
4 20.0 15.0
5 14.0 3.0
Houd er rekening mee dat het resulterende DataFrame de som van de overeenkomende elementen in elk afzonderlijk DataFrame bevat.
Merk op dat de rij met een indexwaarde van 5 alleen bestond in het tweede DataFrame, dus de waarden in deze rij zijn gewoon de waarden in het tweede DataFrame.
Merk ook op dat sinds we de optelling hebben gedaan, elk van de waarden in het nieuwe DataFrame wordt weergegeven als zwevende waarden met één decimaal.
Om elk van deze waarden terug naar een geheel getal te converteren, kunnen we de functie astype() gebruiken:
#convert all columns in new DataFrame to integer
df3 = df3. astype (' int64 ')
#view updated DataFrame
print (df3)
assist points
0 28 14
1 27 18
2 23 11
3 17 11
4 20 15
5 14 3
Elk van de waarden in het nieuwe DataFrame zijn nu gehele getallen.
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende panda-taken kunt uitvoeren:
Panda’s: voeg een kolom toe van het ene DataFrame naar het andere
Panda’s: Haal rijen op die zich niet in een ander DataFrame bevinden
Panda’s: hoe controleer je of meerdere kolommen gelijk zijn?