我得到這個功能:在panda中合計列值並將總數附加或合併到數據框?
def source_revenue(self):
items = self.data.items()
df = pandas.DataFrame(
{'SOURCE OF BUSINESS': [i[0] for i in items], 'INCOME': [i[1] for i in items]})
pivoting = pd.pivot_table(df, index=['SOURCE OF BUSINESS'], values=['INCOME'])
suming = pivoting.sum(index=(0), columns=(1))
此功能得到這樣的:
INCOME 216424.9
dtype: float64
沒有總結,它返回完整的數據幀是這樣的:
INCOME
SOURCE OF BUSINESS
BYD - Other 500.0
BYD - Retail 1584.0
BYD - Transport 42498.0
BYD Beverage - A La Carte 39401.5
BYD Food - A La Carte 瓦廠食品-零點 68365.0
BYD Food - Catering Banquet 53796.0
BYD Rooms 瓦廠房間 5148.0
GS - Retail 386.0
GS Food - A La Carte 48.0
Orchard Retail 130.0
SCH - Food - A La Carte 96.0
SCH - Retail 375.4
SCH - Transport 888.0
SCH Beverage - A La Carte 119.0
Spa 3052.0
XLM Beverage - A La Carte 38.0
的原因,我這樣做是因爲我試圖獲取所有返回的行的總和,將它們相加並將總數附加到數據框。
起初,我試圖與利潤率= TRUE(我看在這裏,這是總結,總連接到數據幀,不是真的)
所以我想知道是否有歸還的方式是什麼數據幀,還可以總結這些值並將總數附加到數據幀的末尾,就像margins = True
一樣。
謝謝你的徹底答案和性能測試。我得到'''NameError:name'np'未定義'試圖執行np.sum時...可能是缺少導入? – xavier
好了,我不得不導入''numpy''',而實際的屬性是'''''numpy.sum''' – xavier
是的,它工作得很好。再次感謝你 ! – xavier