인프런 커뮤니티 질문&답변

올잉님의 프로필 이미지

작성한 질문수

공공데이터로 파이썬 데이터 분석 시작하기

[17/20] pandas 의 concat 으로 두 개의 데이터프레임 하나로 합치기

합치기

21.10.05 17:42 작성

·

270

1

안녕하세요 선생님 질문이 있습니다.

1. 239166 rows × 17 columns

2. 150414 rows × 2 columns

위의 두행을 합치려고 합니다.

저의 생각은 1번의 데이터프레임을 옆에다가 2번의 데이터프레임을 붙여 밑에 nun값에 해당되는 부분을 drop을 시킬려는게 계획이였습니다. 

따라서 merge ( 1 , 2 , how = outer)을 적용할려고 했으나 에러에 concat을 사용하라는게 이유였습니다.

 

제가 생각했던 방향성을 가지고 데이터프레임을 합치기 위해선 어떤 코드를 이용하여 데이터프레임을 합칠 수 있을까요?

다시한번 말씀드리면 어떤 특정 데이터프레임에다가 또 다른 데이터 프레임을 그대로 붙여 중간중간마다 nun값이 생기는것이아니라 부족한 데이터에 nun값이 생기는 부분을 drop시킬 수 있는 합치기를 원합니다.

답변 3

0

올잉님의 프로필 이미지
올잉
질문자

2021. 10. 06. 13:56

알려주셔서 감사합니다!!

0

올잉님의 프로필 이미지
올잉
질문자

2021. 10. 06. 11:00

삭제된 글입니다

박조은님의 프로필 이미지
박조은
지식공유자

2021. 10. 06. 11:04

안녕하세요. 

두 개의 데이터프레임을 연결해 주려면 기준이 필요합니다. 인덱스 값이 서로 같거나 컬럼값이 같아야 하는데 올려주신 내용으로는 공통사항이 보이지 않습니다.

예를들어 prlst_nm 이라는 컬럼의 값이 두 번째 데이터프레임에도 존재하면 merge 를 통해 key 값을 prlst_nm 으로 연결해 볼 수 있을거 같습니다.

0

박조은님의 프로필 이미지
박조은
지식공유자

2021. 10. 05. 23:02

안녕하세요.

질문해 주신 내용은 컬럼의 수가 서로 다르고 행의 수도 서로 다른데요.

이렇게 서로 다른 데이터프레임을 합치려면 뭔가 기준이 필요합니다.

concat 으로 합칠 때는 인덱스 값이나 컬럼의 값이 동일해야 행 또는 열로 합칠수가 있는데요.

질문해 주신 내용만으로는 데이터프레임이 어떻게 생겼는지 확인할 수 없어서 concat 을 사용해야 할지 merge를 사용해야 될지  답변하기 어렵습니다.

 

합치고자 하는 두 데이터프레임의 스크린샷을 함께 올려주시거나 아래 링크의 예제를 참고해 보세요.

 

다음 링크를 참고해서 데이터를 합쳐보는 것을 추천합니다.

[Merge, join, concatenate and compare — pandas 1.3.3 documentation](https://pandas.pydata.org/docs/user_guide/merging.html)

올잉님의 프로필 이미지

작성한 질문수

질문하기