我有一個包含 15 個資料框的字典,我正在搜索如何根據操作向每個資料框添加一列。在我的特定情況下,我想對每個資料幀中的特定列求和,并將該操作的結果放在每個資料幀內的新列中。比如下面。
df['Sum'] = df[columnlist].sum(axis=1)
為了將其應用于字典中的每個資料框,我最終得到了這個解決方案:
def sumrows(df):
df['Sum'] = df[columnlist].sum(axis=1)
return df
sum = {}
sum = {k: sumrows(v) for k,v in dictionary.items()}
我很好奇是否有一種方法可以在我的字典理解范圍內不創建和呼叫函式來做到這一點。我沒有看到很多關于如何做到這一點的資源,所以認為這對于像我這樣的初學者來說可能是一個有益的帖子。
uj5u.com熱心網友回復:
如果df_dict是您的資料框字典和columnlist要匯總的列串列,那么您可以使用.assign()并執行以下操作:
df_sum_dict = {
key: df.assign(Sum=df[columnlist].sum(axis=1)) for key, df in df_dict.items()
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/456002.html
上一篇:XQuery中字典中的for回圈
