2014-01-22 36 views
0

漂亮打印一個pandas.DataFrame.groupby.count()的結果嗎?漂亮的打印一個熊貓DataFrame組由

我的代碼是:

print out_df.groupby(['Symbol','Account'])['OrderID'].count() 

我的輸出是:

Symbol Account 
XXXXX 123 34 
     124 32 
YYYYY 123 22 
     124 24 
dtype: int64 

我想有:

Symbol Account Count 
XXXXX 123  34 
     124  32 
YYYYY 123  22 
     124  24 

與列標題Count並沒有dtype

我想我可以使用:

print orders_str[:orders_str.rfind('\n')] 

回答

1
print pd.DataFrame({'Count': out_df.groupby(['Symbol', 'Account']).size()}) 

輸出:

   Count 
Symbol Account 
XXXXX 123  34 
     124  32 
YYYYY 123  22 
     124  24 
2

您可以撥打.agg(["count"])

import pandas as pd 
import random 
s = ["xxx", "yyy", "zzz"] 
symbols = [random.choice(s) for i in range(100)] 
s = [10, 20, 30] 
account = [random.choice(s) for i in range(100)] 
s = [11, 22, 33] 
ids = [random.choice(s) for i in range(100)] 
print df.groupby(["Account", "Symbols"])['OrderID'].agg(["count"]) 

輸出:

    count 
Account Symbols  
10  xxx   11 
     yyy   13 
     zzz   9 
20  xxx   6 
     yyy   11 
     zzz   14 
30  xxx   6 
     yyy   16 
     zzz   14