본문 바로가기
Study/Data Science 개인 공부

Do it! 데이터 분석을 위한 판다스 입문 5장

by 주원주 2023. 7. 5.

05 데이터 연결하기

05-1 분석하기 좋은 데이터

  • 데이터 집합을 분석하기 좋은 상태로 만들어 놓기
  • Tidy Data: 다음 조건들을 만족하는 깔끔한 데이터
    • 데이터 분석 목적에 맞는 데이터를 모아 새로운 표(Table)를 만들기 >> 누락값이나 중복값이 없는 상태로 데이터가 잘 연결되어 있어야 함
    • 측정한 값은 행(row)로, 변수는 열(column)로 구성된 데이터
  • 데이터 집합은 연관성이 깊은 값끼리 모여 있기 때문에, 데이터 연결을 통해 필요한 데이터를 만드는 과정이 반드시 필요함

05-2 데이터 연결 기초

  • 데이터를 연결하기 위해 concat 메서드 사용
    • concat 메서드에 연결하려는 데이터프레임을 리스트에 담아 전달하면 연결한 데이터프레임을 반환
    • 위에서 아래 방향으로 연결
    • 전달받은 리스트의 요소 순서대로 데이터 연결, 기존 데이터프레임에 있던 인덱스 그대로 유지
  • concat 메서드로 데이터프레임과 시리즈 연결
    • 시리즈는 행이 1개인 데이터프레임 
    • 시리즈가 새로운 행이 아니라 새로운 열로 추가됨
    • 시리즈에 열 이름이 없으면 새로운 열로 간주하여 0이라는 이름의 열로 추가
    • concat 메서드는 한 번에 2개 이상의 데이터프레임을 연결 >> 연결할 데이터프레임이 1개라면 append 메서드도 사용 가능
  • ignore_index를 True로 지정하면 데이터를 연결한 다음 데이터프레임의 인덱스를 0부터 다시 지정
  • 열 방향으로 데이터 연결: concat 메서드의 axis 인자를 1로 지정
  • 같은 열 이름이 있는 데이터프레임에서 열 이름으로 데이터를 추출하면 해당 열 이름의 데이터 모두 추출됨
  • 각 데이터프레임의 공통 열만 골라 연결: join 인자를 inner로 지정
    • Inner Join(내부 조인): 둘 이상의 데이터 프레임에서 조건에 맞는 행을 연결
    • Outer Join(외부 조인): 두 데이터프레임 중 어떤 데이터프레임을 기준으로 할 것인지에 따라 왼쪽 외부 조인(Left Outer Join), 오른쪽 외부 조인(Right Outer Join), 완전 외부 조인(Full Outer Join)으로 나눌 수 있음
      • 왼쪽 외부 조인(Left Outer Join): 데이터프레임을 연결할 때 왼쪽 데이터프레임을 모두 포함하여 연결
      • 오른쪽 외부 조인(Right Outer Join): 데이터프레임을 연결할 때 오른쪽 데이터프레임을 모두 포함하여 연결
      • 완전 외부 조인(Full Outer Join): 왼쪽과 오른쪽 데이터프레임을 모두 포함하여 연결

05-3 데이터 연결 마무리

  • 판다스는 데이터 연결 전용 메서드인 merge를 제공
    • 기본적으로 내부 조인(Inner Join)을 실행하며 메서드를 사용한 데이터프레임을 왼쪽으로 지정하고 첫 번째 인자값으로 지정한 데이터프레임을 오른쪽으로 지정
    • left_on, right_on 인자는 값이 일치해야 할 왼쪽과 오른쪽 데이터프레임의 열 지정
    • 왼쪽 데이터프레임의 열과 오른쪽 데이터프레임의 열의 값이 일치하면 왼쪽 데이터프레임을 기준으로 연결
    • left_on, right_on에 전달하는 값은 여려 개라도 상관 없음
    • 중복된 열 이름 >> _x(왼쪽 데이터프레임), _y(오른쪽 데이터프레임) 접미사가 추가됨

출처: Do it! 데이터 분석을 위한 판다스 입문 (Chen, Daniel Y. 지음)

https://www.yes24.com/Product/Goods/64625506