0
我想創建兩個總和,一個條件爲date
和type
,另一個條件僅限於date
。這是我的數據幀的摘錄:熊貓:按組總結行數
0 1 2 3
date type
2003-01-01 unemp 1.733275e+09 2.067889e+09 3.279421e+09 3.223396e+09
2005-01-01 unemp 1.413758e+09 2.004171e+09 2.383106e+09 2.540857e+09
2007-01-01 unemp 1.287548e+09 1.462072e+09 2.831217e+09 3.528558e+09
2009-01-01 unemp 2.651480e+09 2.846055e+09 5.882084e+09 5.247459e+09
2011-01-01 unemp 2.257016e+09 4.121532e+09 4.961291e+09 5.330930e+09
2013-01-01 unemp 7.156784e+08 1.182770e+09 1.704251e+09 2.587171e+09
2003-01-01 emp 6.e+09 9.692455e+09 2.288822e+10 3.215460e+10
2005-01-01 emp 5.647393e+09 9.597211e+09 2.121828e+10 3.107219e+10
2007-01-01 emp 4.617047e+09 8.030113e+09 2.005203e+10 2.755665e+10
現在,我試圖
weightsDf.groupby(level=[0,1]).sum()
weightsDf.groupby(level=[0,1]).apply(lambda x: x.sum())
這些都讓我總和每列,不是總和對所有列。對於那些我想在兩個type
和date
調節的情況下,我可以簡單地做
weightsDf.sum(axis=1)
但是我怎麼進行的,我想只date
條件時?與應用於數據幀時不同,
weightsDf.groupby(level=[0,1]).sum(axis=1)
不接受參數axis
。我可能凌亂的第二層的數據幀,然後再按行,但似乎太複雜。
首先總和列,然後按組? 'weightDf.sum(axis = 1).groupby(level = [0,1])。sum()''那是你在找什麼? – joris 2015-04-02 13:41:07
@joris:作品:) – FooBar 2015-04-02 13:42:05