Pandas concat 사용법

Pandas의 concat 메서드는 데이터프레임을 행 또는 열 방향으로 결합하는 데 사용된다. 이 메서드를 사용하면 데이터프레임을 수직 또는 수평으로 합칠 수 있으며, 다양한 데이터를 하나로 통합할 때 유용하다. 이 글에서는 Pandas의 concat 메서드 사용법에 대해 알아본다.

merge()와 차이점

merge()concat()은 두 데이터프레임을 합친다는 점에서는 동일하나 그 결합 방법은 다르다. concat()은 key가 되는 공통 열이나 인덱스 지정 없이, 열이나 행 방향으로 합칠 수 있는 반면, merge()는 key가 되는 공통열을 기준으로 열 방향으로 결합할 수 있다.

merge()에 대한 것은 다음에서 참조할 수 있다.

concat() 사용법

pandas.concat(objs, *, axis=0, join='outer', ignore_index=False, keys=None, levels=None, names=None, verify_integrity=False, sort=False, copy=None)[source]
  • axis=0 : 합칠 방향을 결정, {0/’index’, 1/’columns’}
  • join='outer': join 방식 지정, {‘inner’, ‘outer’}
  • ignore_index=False: False:기존 index 유지, True: 기존 index 무시
  • keys=None: # 계층적 index 사용하려면 keys 튜플 입력
  • levels=None,
  • names=None: # index의 이름 부여하려면 names 튜플 입력
  • verify_integrity=False: # True: index 중복 확인
  • copy=True: # 복사

Example (예제)

수직 방향으로 데이터프레임 연결

다음은 두 개의 데이터프레임 df1df2를 수직 방향으로 연결하는 예제이다. df1뒤로 df2가 추가된다.

import pandas as pd

data1 = {
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Age': [25, 30, 35]
}

data2 = {
    'Name': ['David', 'Eva'],
    'Age': [40, 45]
}

df1 = pd.DataFrame(data1)
df2 = pd.DataFrame(data2)

# 수직 방향으로 데이터프레임 연결
result = pd.concat([df1, df2], axis=0)

print(result)
      Name  Age
0    Alice   25
1      Bob   30
2  Charlie   35
0    David   40
1      Eva   45

열 방향으로 데이터프레임 연결

열 방향으로 데이터프레임을 연결하려면 axis=1을 설정한다.

# 열 방향으로 데이터프레임 연결
result = pd.concat([df1, df2], axis=1)

print(result)
      Name  Age   Name   Age
0    Alice   25  David  40.0
1      Bob   30    Eva  45.0
2  Charlie   35    NaN   NaN

참조

답글 남기기