2016-10-06 2 views
1

아래 샘플 데이터와 같이 팬더를 사용하여 두 개의 입력 파일을 결합하는 데 문제가 있습니다. 그들은 WordPress에서 내 보낸 CSV 파일로 시작합니다. 데이터 프레임에로드합니다. 내 생각은 빈 출력 데이터 프레임을 만들고 첫 번째 입력 파일에 각각 id을 반복하여 채우는 것이지만, 성가신 것으로 보이고 팬더의 강점을 이용하지 않는 것 같습니다. 그리고 팬더에 익숙하지 않기 때문에 목록 형식의 두 번째 파일을 원하는 출력 형식으로 변환하는 방법을 알 수 없습니다.팬더와 두 파일을 결합하십시오.

input_file_1 :

id postDate 
23 2016-10-03 
24 2016-02-15 
25 2016-07-22 

input_file_2 :

id key value 
23 name smith 
23 age 24 
23 city boston 
24 name jones 
24 age 35 
24 city chicago 
25 name williams 
25 age 21 
25 city dallas 

desired_output_file :

id postDate name  age city 
23 2016-10-03 smith 24 boston 
24 2016-02-15 jones 35 chicago 
25 2016-07-22 williams 21 dallas 
+0

감사합니다. 왜 당신이 판다/판다를 자본화하는지 궁금해. 맥키니 (McKinney)의 '파이썬 데이터 분석 (Python for Data Analysis)'에서 문장의 시작 부분이나 섹션 헤더로 대문자로 표기하지 않았습니다. 예를 들어 4 페이지를보십시오. SO 스타일에서 대문자 사용을 요구합니까? 그렇다면 내 게시물 전체에 대문자로 표기하지 않아야합니까? 첫 번째 문장에서 그것은 대문자로 남았습니다. 감사. –

답변

0

사용할 수있는 join과 함께 pivot :

In [126]: df1.set_index('id').join(df2.pivot(index='id', columns='key', values='value')) 
Out[126]: 
     postDate age  city  name 
id 
23 2016-10-03 24 boston  smith 
24 2016-02-15 35 chicago  jones 
25 2016-07-22 21 dallas williams 

설명 : 편집에 대한

In [127]: df2.pivot(index='id', columns='key', values='value') 
Out[127]: 
key age  city  name 
id 
23 24 boston  smith 
24 35 chicago  jones 
25 21 dallas williams 
관련 문제