[data science] pandas - concat()

덴장·2026년 5월 1일

data

목록 보기
46/55
  • DataFrame 결합
    데이터를 결합하기 위해 pandas의 concat 함수를 사용하여 DataFrame을 위아래 또는 옆으로 합침
  1. 기본 concat 방식
    pd.concat()을 사용하여 여러 DataFrame들을 리스트 형태로 전달하여 위아래로 합칠 수 있다.

  2. 인덱스 조정
    DataFrame을 결합할 때 ignore_index=True 옵션을 사용하면 기존 인덱스 대신 0부터 시작하는 새로운 인덱스를 설정할 수 있다.

  3. 옆으로 합치기
    axis=1 옵션을 사용하면 DataFrame을 열 방향으로 결합하여 학생들의 영어와 수학 점수를 한 번에 볼 수 있다.

  4. NaN 처리
    DataFrame 결합 시 값이 없는 부분은 결측값(NaN)으로 표시되며, 이는 기본 concat의 위아래 결합에서 자주 발생한다.

import pandas as pd

english_df1 = pd.DataFrame({ 'name' : ['gildong1','gildong2','gildong3'],
                             'score' : [50,  60,  70]
                           })
english_df2 = pd.DataFrame({ 'name' : ['youngsu1','youngsu2','youngsu3'],
                             'score' : [50,  60,  70]
                           })

pd.concat([english_df1, english_df2])

pd.concat([english_df1, english_df2], ignore_index=True)

english_df = pd.concat([english_df1, english_df2], ignore_index=True)
english_df

  • 기본적으로 concat을 사용하면 아래 방향으로 행으로 연결 되기 때문에 아래와 같이 열로 추가하기 위해 axis=1 옵션사용
math_df = pd.DataFrame({ 'name' : ['gildong1','gildong2','gildong3', 'youngsu1','youngsu2','youngsu3'],
                             'score' : [50,  60,  70, 40, 60, 80]
                           })
math_df

score_df = pd.concat([english_df, math_df], axis=1)
score_df

profile
개발자

0개의 댓글