簡體   English   中英

熊貓適用於追加總行

[英]pandas apply to append total row

我已經經歷了許多將 Total 行放在數據幀末尾的示例。 我只是想知道為什么下面的方法不能工作:

import pandas as pd

dict = {
    'a' : [1,2 ,3, 4, 5],
    'b' : [3, 5, 7, 9, 10]
}

df = pd.DataFrame(dict)
# print(df)

def func(x):
    x['sum'] = x.sum()

df2 = df.apply(lambda x: func(x), axis=0)

print(df2)

在這里,x 始終是一個包含完整列的系列,我附加了一個名為 sum 的索引。 請指導。

編輯:如果我們可以用axis = 1計算總和,為什么我們不能用axis = 0來計算。

這里缺少從您的函數return x

def func(x):
    x['sum'] = x.sum()
    return x

df2 = df.apply(lambda x: func(x), axis=0)
print(df2)

      a   b
0     1   3
1     2   5
2     3   7
3     4   9
4     5  10
sum  15  34

但最簡單的是使用setting with enlargement

df.loc['sum'] = df.sum()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM