Innerhalb eines Pandas DataFrame kann das Kombinieren von Daten aus mehreren Zeilen für einen bestimmten Satz von Spalten eine häufige Aufgabe sein. In diesem Artikel befassen wir uns mit der Frage der Berechnung der Summe bestimmter Spalten in DataFrame-Zeilen.
Anfänglicher Ansatz und Fehler:
Man könnte versuchen, das zu verwenden Folgen Sie dem Code, um die Summe der Spalten „a“, „b“ und „d“ zu ermitteln:
df['e'] = df[['a', 'b', 'd']].map(sum)
Dieser Ansatz schlägt jedoch fehl, da in der Spalte „c“ nicht numerische Daten vorhanden sind .
Korrekte Operation:
Um nicht numerische Daten zu berücksichtigen und die gewünschten Spalten genau zu summieren, ändern wir den Code wie folgt:
df['e'] = df.sum(axis=1, numeric_only=True)
Erklärung:
Die Summenfunktion wird mit axis=1 aufgerufen, um Zeilen statt Spalten zu summieren. Darüber hinaus stellt numeric_only=True sicher, dass bei der Berechnung nur numerische Spalten berücksichtigt werden, ausgenommen nicht numerische Spalten wie „c“.
Summe spezifischer Spalten:
An Summieren Sie nur eine Teilmenge der Spalten, erstellen Sie eine Liste der gewünschten Spalten und schließen Sie diejenigen aus, die Sie nicht benötigen:
col_list.remove('d') df['e'] = df[col_list].sum(axis=1)
Dieser Vorgang würde die Spalten „a“, „b“ und „c“ summieren , Speichern des Ergebnisses in der Spalte „e“.
Das obige ist der detaillierte Inhalt vonWie summiere ich bestimmte Spalten in einem Pandas-DataFrame beim Umgang mit nicht numerischen Daten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!