Skip to main content

데이터 병합

여러 개의 데이터 테이블을 특정한 열을 기준으로 병합하는 노드입니다.


설명

데이터 병합 노드는 여러 개의 데이터셋을 공통 열을 기준으로 수평으로 병합합니다. 속성에서 입력 포트를 추가하여 원하는 개수만큼 연결할 수 있습니다.

기준 열의 값이 같은 행끼리 매칭되며, 첫 번째(왼쪽) 데이터에 나머지 데이터의 열들이 추가됩니다. 입력이 세 개 이상이면 왼쪽부터 순서대로 병합됩니다.

기본적으로 모든 데이터셋에 공통으로 존재하는 행만 남습니다. 병합 방식은 속성에서 변경할 수 있습니다.


포트 구성

입력 포트

  • 데이터셋: 공통 열을 가진 데이터셋입니다. 속성에서 입력 포트를 동적으로 추가하여 원하는 개수만큼 연결할 수 있습니다.

출력 포트

  • 데이터셋: 기준 열을 통해 병합된 하나의 데이터

속성

입력 포트 추가

속성 탭에서 입력 데이터셋 포트를 추가할 수 있습니다. 세 개 이상의 데이터셋을 한 번에 병합할 때 사용하며, 첫 번째(왼쪽) 포트를 기준으로 이후 포트가 순서대로 병합됩니다.

기준 열

기준 열은 왼쪽 데이터에서 선택 가능하며 모든 데이터가 공통으로 가지고 있는 컬럼을 선택할 수 있습니다.

공통 컬럼을 선택하지 않으면 모든 데이터셋에 공통으로 존재하는 열이 자동으로 기준이 됩니다.

병합 방식

행을 매칭하는 방식을 선택합니다.

  • 교집합(inner): 모든 데이터셋에 공통으로 존재하는 행만 남깁니다. (기본값)
  • 합집합(outer): 어느 한 데이터셋에라도 존재하는 행을 모두 남기고, 채울 값이 없는 칸은 비웁니다.
  • 왼쪽 기준(left): 첫 번째(왼쪽) 데이터셋의 행을 모두 남기고, 나머지 데이터셋에서 매칭되는 값만 채웁니다.

노드 연결 설정

다른 노드의 출력 포트를 데이터 병합 노드와 연결할 때, 여러 입력 포트 중 어느 포트에 연결할지 선택할 수 있는 노드 연결 설정 팝업이 표시됩니다.

  • 왼쪽(첫 번째 포트): 데이터 병합 시 기준이 되는 테이블
  • 이후 포트: 기준 테이블에 순서대로 맞추어 추가되는 테이블

세 개 이상 연결한 경우, 왼쪽(첫 번째)부터 순서대로 병합됩니다.

자세한 내용은 다중 포트 연결을 참고하세요.


예제

데이터 설명

두 개의 데이터셋을 병합하는 예제입니다.
학생의 기본 정보와 수강 과목 정보를 student_id 기준으로 합칩니다.
두 데이터셋 모두에 존재하는 학생만 남도록 병합됩니다.

  • students.csv: 학생의 기본 정보 (5명)
    • 컬럼: student_id, name, age, major
student_idnameagemajor
S001김민수21Computer Science
S002이서연22Mathematics
S003박지훈23Economics
S004최유진20Design
S005정하늘24Statistics
  • courses.csv: 수강 과목 및 성적 정보 (5명)
    • 컬럼: student_id, course_id, course_name, grade
student_idcourse_idcourse_namegrade
S001C101Python ProgrammingA
S002C102Linear AlgebraB+
S003C103MicroeconomicsA-
S004C104UX DesignB
S006C105Data AnalysisA
업로드 시간

S005는 수강 과목이 없고, S006은 학생 정보에 없는 데이터입니다.


데이터 병합 예제

노드 설정:

  • 기준 열: student_id
  • 왼쪽 데이터: students.csv
  • 오른쪽 데이터: courses.csv

결과:

student_idnameagemajorcourse_idcourse_namegrade
S001김민수21Computer ScienceC101Python ProgrammingA
S002이서연22MathematicsC102Linear AlgebraB+
S003박지훈23EconomicsC103MicroeconomicsA-
S004최유진20DesignC104UX DesignB

요약:

  • student_id를 기준으로 병합됨
  • 두 데이터셋 모두에 존재하는 학생만 남음 (S001~S004)
  • 왼쪽에만 있는 S005, 오른쪽에만 있는 S006은 제외됨
  • 총 행 개수: 4행, 열 개수: 7개

데이터 병합 예제