如何對Pandas 中特定列的DataFrame 行求和
對於給定的DataFrame,可能需要計算各個值的總和特定行。在嘗試透過 df[['a', 'b', 'd']].map(sum) 實現此目的時,您可能會遇到問題。
此任務的適當操作涉及使用 sum()軸=1。此操作計算每行的總和,忽略非數字列。為了確保準確性,建議指定 numeric_only=True,尤其是在 Pandas 2.0 及更高版本中。
例如,考慮包含列'a'、'b'、'c' 和'd' 的DataFrame ,其中'c' 是非數字列:
df = pd.DataFrame({'a': [1, 2, 3], 'b': [2, 3, 4], 'c': ['dd', 'ee', 'ff'], 'd': [5, 9, 1]})
要計算列' a' 的總和, 'b' 和'd',我們可以使用:
df['e'] = df.sum(axis=1, numeric_only=True)
這將添加一個列'e',其中包含所需列的總和。
如果您希望對特定列求和列同時排除其他列,您可以指定列列表並使用以下命令刪除任何不需要的列col_list.remove(column_name).
col_list = list(df) col_list.remove('d') df['e'] = df[col_list].sum(axis=1)
這將使用指定列的總和建立一個新列「e」。
以上是如何對 Pandas 中的特定 DataFrame 行求和?的詳細內容。更多資訊請關注PHP中文網其他相關文章!