2017-12-27 3 views
1

내 코드가 잘 작동하지만 출력 결과를 다른 방식으로 볼 필요가있다.Groupby in Pandas

업데이트 된 코드 답변

import pandas as pd 

# Import File 
YMM = pd.read_excel('C:/Users/PCTR261010/Desktop/OMIX_YMM_2016.xlsx').groupby(['Make','Model']).agg({'StartYear':'min', 'EndYear':'max'}) 

print(YMM) 

출력은 만들기 모양을 잡 SINCE | 모델 | 시작 년 | 끝 부분, 모든 제조 업체가 모델 열 옆의 열 만들기 아래에 나열된 상태로 표시됩니다. 그러나 Makes는 Pivot 테이블처럼 필터링됩니다.
enter image description here

난 다음 모든 뷰익 모델 등 미국의 모든 미국 자동차 모델 옆에 자동차, 모든 뷰익 필요 : 여기

는 스크린 샷입니다. http://jmp.sh/KLZKWVZ

+0

연결하지 마십시오 데이터. 대신 여기에서 공유하십시오. –

답변

2

이 시도 : 여기

이 데이터를 샘플링 할 수있는 링크입니다 자신의 코드와 함께

res = YMM.groupby(['Make','Model'], as_index=False).agg({'StartYear':'min', 'EndYear':'max'}) 

또는

res = YMM.groupby(['Make','Model']).agg({'StartYear':'min', 'EndYear':'max'}).reset_index() 
+0

그게 다야! 나는 .agg와 놀았고 그것에 도달하지 못했습니다. 이제 Model 옆의 열을 반복하기 위해 Make가 필요합니다. –

+0

@SamRussoPalmer, 도움이 되니 기쁩니다. 회사 방화벽에서 샘플 데이터를 다운로드하지 못하게 ... 나중에 집에서 다운로드 할 수 있습니다. – MaxU

+0

업데이트되었지만 스크린 샷을해야했지만 아래에서 설명 했으므로 원하는 데이터 세트의 예제를 게시 할 수 있습니까? (모델 옆에있는 열을 반복해서 작성해야 함). –

1

Min = YMM.groupby(['Make','Model']).StartYear.min() 
Max = YMM.groupby(['Make','Model']).EndYear.max() 

Min['Endyear']=Max.EndYear