2016-11-22 4 views
1

Multiindex의 열에 groupby를 사용하고 있습니까? 나는 당신이 행에 할 수 있고 좋은 점에 관해서는 documentation가 있다는 것을 안다. 그러나 나는 컬럼에 groupby 수없는 것. 내가 가지고있는 유일한 해결책은 데이터 프레임을 트랜스 포즈하는 것입니다. 이제Pandas Multiindex Groupby on Columns

#generate data (copied from pandas example) 
arrays=[['bar', 'bar', 'baz', 'baz', 'foo', 'foo', 'qux', 'qux'],['one', 'two', 'one', 'two', 'one', 'two', 'one', 'two']] 
tuples = list(zip(*arrays)) 
index = pd.MultiIndex.from_tuples(tuples, names=['first', 'second']) 
df = pd.DataFrame(np.random.randn(3, 8), index=['A', 'B', 'C'], columns=index) 

내가

df.groupby(level=1) 
df.groupby(level='first') 

그러나 작동 행과 전치 실패하는 열을 GROUPBY하려고합니다

df.T.groupby(level=1) 
df.T.groupby(level='first') 

그래서 전치하지 않고 할 수있는 방법이 있나요?

답변

4

당신은 groupby 방법 축을 지정해야합니다

df.groupby(level = 1, axis = 1).sum() 

enter image description here

또는 당신은 GROUPBY 레벨 0을 의미하는 경우 :

df.groupby(level = 0, axis = 1).sum() 

enter image description here