Pandas: spaltenwerte basierend auf einem anderen dataframe aktualisieren
Häufig möchten Sie möglicherweise die Werte einer Spalte eines Pandas-DataFrames mithilfe der Werte eines anderen DataFrames aktualisieren.
Glücklicherweise ist dies mit der Funktion merge() in Pandas einfach zu bewerkstelligen.
Das folgende Beispiel zeigt, wie das geht.
Beispiel: Spaltenwerte in Pandas DataFrame basierend auf einem anderen DataFrame aktualisieren
Angenommen, wir haben den folgenden Pandas-DataFrame, der Informationen über verschiedene Basketballspieler enthält:
import pandas as pd #createDataFrame df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ' points ': [18, 22, 19, 14, 14, 11, 20, 28], ' assists ': [0, 0, 0, 1, 0, 0, 0, 1]}) #view DataFrame print (df1) team points assists 0 to 18 0 1 B 22 0 2 C 19 0 3 D 14 1 4 E 14 0 5 F 11 0 6 G 20 0 7:28 a.m. 1
Gehen Sie nun davon aus, dass die Werte der Hilfsspalte in diesem DataFrame nicht aktualisiert werden.
Nehmen wir jedoch an, dass wir über den folgenden zweiten DataFrame verfügen, der aktualisierte Werte für die Hilfsspalte enthält:
#create second DataFrame df2 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'], ' points ': [18, 22, 19, 14, 14, 11, 20, 28], ' assists ': [8, 7, 7, 4, 9, 12, 3, 5]}) #view second DataFrame print (df2) team points assists 0 to 18 8 1 B 22 7 2 C 19 7 3 D 14 4 4 E 14 9 5 F 11 12 6 G 20 3 7:28 5
Wir können die folgende Syntax verwenden, um die Hilfsspaltenwerte des ersten DataFrame mithilfe der Hilfsspaltenwerte des zweiten DataFrame zu aktualisieren:
#merge two DataFrames
df1 = df1. merge (df2, on=' team ', how=' left ')
#drop original DataFrame columns
df1. drop ([' points_x ', ' assists_x '], inplace= True , axis= 1 )
#rename columns
df1. rename (columns={' points_y ': ' points ', ' assists_y ': ' assists '}, inplace= True )
#view updated DataFrame
print (df1)
team points assists
0 to 18 8
1 B 22 7
2 C 19 7
3 D 14 4
4 E 14 9
5 F 11 12
6 G 20 3
7:28 5
Beachten Sie, dass die Hilfsspaltenwerte des ersten DataFrame mithilfe der Hilfsspaltenwerte des zweiten DataFrame aktualisiert wurden.
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie andere häufige Aufgaben in Pandas ausgeführt werden:
So entfernen Sie die erste Zeile in Pandas DataFrame
So entfernen Sie die erste Spalte in Pandas DataFrame
So entfernen Sie doppelte Spalten in Pandas