2017-09-25 3 views
-1

저는 피벗 테이블을 다른 데이터 프레임에 묶는지도 함수를 사용합니다. A1 : A4는 다른 위치를 나타내는 열입니다. 따라서 피벗 테이블의 값은 A1 또는 A3 등의 인스턴스 수를 나타냅니다.파이썬 팬더는 피벗을 다시 데이터 프레임으로 매핑합니다.

하나의 데이터 프레임과 하나의 피벗 테이블이 있습니다. dataframe (DF1)는 다음과 같습니다

    Instance Instance Instance Instance 
    SubscriberKey A1  A2  A3  A4 
     'abc'  1   0  2  0 
     'bcd'  0   1  1  2 
     'cde'  1   1  0  0 
어떻게 든 내 DF의 A1을 채우는 싶습니다

: A4 열이 무엇인지에 따라

SubscriberKey Inst A1 A2 A3 A4 
     'abc'  1  0 0  0 0 
     'bcd'  2  0 0  0 0 
     'cde'  1  0 0  0 0 
     'def'  3  0 0  0 0 
     'efg'  0  0 0  0 0 

내 피벗 테이블 (PT1)는 다음과 같습니다 피벗. df에는 피벗 테이블에 포함 된 것보다 많은 구독자 키가 있으므로 행 수가 동일하지 않습니다.

출력과 같습니다

SubscriberKey A1 A2  A3 A4 
     'abc'  1 0  2 0 
     'bcd'  0 1  1 2 
     'cde'  1 1  0 0 
     'def'  0 0  0 0 
     'efg'  0 0  0 0 

어떤 도움 감사합니다, 감사합니다!

+0

"당신의 진술에"피벗 테이블보다 많은 구독자 키가 있기 때문에 행 수가 동일하지 않습니다. "라는 질문에 다시 질문을하거나 원하는 출력을 보여줄 필요가 있다고 생각합니다. 당신이주는 견본에 맞지 않습니다. 당신이 말한 것에 따라, 당신은'reindex' 메소드를 사용하고 싶을지도 모릅니다. – JoeCondron

+0

안녕하세요 @JoeCondron. 나는 그 포스트를 편집해서 미안해. – user6749426

답변

1

당신이주는 샘플을 바탕으로, 당신은

pt1['Instance'].reindex_like(df1.drop('Inst', axis=1)).fillna(0).astype(int) 

당신은 아마 그것이 작동하는 방법의 아이디어를 줄이 계산의 각 단계의 출력을 검사해야 할 수 있습니다.

관련 문제