파이썬 튜토리얼: DF 병합하는 방법!
pandas merge(): 공통 열 또는 인덱스를 기준으로 데이터 결합하기
merge()의 사용 방법
merge()
는 데이터를 결합하는 데 사용되는 기능과 유사한 기능을 제공하는 pandas의 도구입니다. 여러 데이터셋을 통합하고 분석하면서 데이터 이해력을 향상시키는 데 도움이 되는 기능입니다.
이 튜토리얼에서는 pandas를 사용하여 데이터를 결합하는 다음과 같은 방법과 시점을 배우게 됩니다.
merge()
: 공통 열 또는 인덱스를 기준으로 데이터를 결합.join()
: 키 열 또는 인덱스를 기준으로 데이터를 결합합니다.concat()
: 행 또는 열을 기준으로 데이터프레임을 결합합니다.
이 튜토리얼의 예제를 사용하여 대화형 Jupyter 노트북 및 데이터 파일을 따라할 수 있습니다.
참고: 아래에서 배울 기술은 일반적으로 DataFrame
및 Series
객체 모두에 대해 동작합니다. 그러나 간단함과 간결성을 위해 예제에서는 ‘데이터셋’이라는 용어를 사용하여 데이터프레임 또는 시리즈로 둘 다 사용할 수 있는 객체를 가리킵니다.
pandas merge(): 공통 열 또는 인덱스를 기준으로 데이터 결합하기
먼저 배울 기술은 merge()
입니다. merge()
는 데이터베이스의 join 동작과 유사한 기능을 제공합니다. 학습할 세 가지 기술 중 가장 유연한 기능입니다.
하나 이상의 키를 기반으로 데이터 개체를 결합하려는 경우 데이터베이스의 작업과 유사한 merge()
를 사용할 수 있습니다. 구체적으로는 데이터를 공유하는 행을 결합하려는 경우 merge()
가 필요한 도구입니다.
merge()
를 사용하면 일대다 및 다대다 조인 모두를 수행할 수 있습니다. 일대다 조인에서 하나의 데이터셋은 동일한 값을 반복하는 병합 열에 많은 행을 가집니다. 예를 들어, 값이 1, 1, 3, 5 및 5 일 수 있습니다. 동시에 다른 데이터셋의 병합 열에는 반복되는 값이 없을 것입니다. 1, 3, 5를 예로 들 수 있습니다.
많은 수의 다대다 조인의 경우 두 병합 열 모두 반복된 값을 가질 것입니다. 이러한 병합은 보다 복잡하며 조인된 행의 카르테시안 곱을 결과로 반환합니다.
즉, 병합 후에 키 열에서 동일한 값을 공유하는 모든 행의 조합이 있을 것입니다.
아래 예제에서는 merge()
함수의 사용법과 다양한 예제를 살펴보겠습니다.
결과:
위 예제에서는 df1
과 df2
데이터프레임을 Name
열을 기준으로 병합했습니다. 결과는 공통된 Name
값에 대한 행만 포함된 데이터프레임인 merged_df
입니다.