2013-06-13 4 views
-1

팬더에서 데이터 프레임의 열을 스태킹하는 동시에 열을 쌓아 고유 값을 포함하지 않는 인덱스 열로 만드는 데 문제가 있습니다.데이터 프레임의 스택 열 및 스택 인덱스 열

>>> ds 
    respondent brand engine country aware aware_2 aware_3 age volvo resp 
0   a volvo  p  swe  1  0  1 23 True  1 
1   b volvo None  swe  0  0  1 45 True  2 
2   c bmw  p  us  0  0  1 56 False  3 
3   d bmw  p  us  0  1  1 43 False  2 
4   e bmw  d germany  1  0  1 34 False  1 
5   f audi  d germany  1  0  1 59 False  2 
6   g volvo  d  swe  1  0  0 65 True  3 
7   h audi  d  swe  1  0  0 78 False  2 
8   i volvo  d  us  1  1  1 32 True  2 

내가 스택으로 열 resp으로도 열 aware, aware_2aware_3과 함께 새로운 dataframe을하고 싶습니다.

+0

실제로 원하는 것을 분명히 할 수 있습니까? 쌓은 방법? (처음 몇 줄을 줄 수 있습니까?) –

+0

더미 변수 (인식, 인식 _2, 인식 _3)를 스택에 넣고 resp 변수를 별도로 스택에 넣고 해당 변수가있는 스택 된 더미를 assosiate하고 싶습니다. 따라서 2 개의 스택 된 열이있는 새로운 데이터 집합이어야합니다. – jonas

답변

0

이게 당신이 쓴거야?

In [11]: df1 = df.set_index(['aware', 'aware_2', 'aware_3', 'resp']) 

In [12]: df1.columns.name = 'heading' 

In [13]: df1.stack() 
Out[13]: 
aware aware_2 aware_3 resp heading 
1  0  1  1  respondent   a 
           brand   volvo 
           engine    p 
           country   swe 
           age    23 
           volvo   True 
0  0  1  2  respondent   b 
           brand   volvo 
           engine   None 
           country   swe 
           age    45 
           volvo   True 
... 
+0

사실, 데이터 프레임에 2 개의 열이 있고 싶습니다. 하나는 스택 된 더미와 다른 하나의 열 (resp)은 옆에 쌓여 있습니다. – jonas

관련 문제