주문을 정제하고 고객과 연결하기
주문 정제 파이프라인을 실행하고 결손 식별자의 제거·대체 정책을 확인합니다.
이번 단계의 질문
주문과 고객을 연결하기 전에 어떤 행을 믿을 수 있을까요?
왜 지금 필요한가
고객 세그먼트는 customer_id를 기준으로 주문을 모읍니다. 금액이나 고객 ID가 없는
주문은 유효한 구매를 만들 수 없습니다. 상품 ID만 없다면 미상 상품으로 분리해 주문
사실은 보존할 수 있습니다.
직접 해보기
analytics의 주문 정제 파이프라인(orders_cleaning)을 열고 Run을 선택합니다.
결측값 정제 코드는 order_id, order_date, customer_id, product_id,
amount의 null과 공백 문자열을 결손값으로 처리합니다. 상품 ID가 없으면
PRD-UNKNOWN을 대입하고, 나머지 필수값이 없으면 행을 제거합니다.

이 결과가 나오면 성공
원천 100행에서 12행을 제거하고 2행의 상품 ID를 대체해 정제 주문 88행을 만듭니다.
| 원천 문제 | 처리 | 결과 |
|---|---|---|
amount가 null인 주문 7건 | 유효한 구매 금액이 없어 제거 | 7건 제거 |
customer_id가 빈 주문 5건 | 고객 구매 관계를 만들 수 없어 제거 | 5건 제거 |
product_id가 빈 주문 2건 | PRD-UNKNOWN으로 대체 | 2건 유지 |
order_date에는 결손값이 없습니다. 정제 결과의 다섯 필수 컬럼에도 null이나 공백
문자열이 남지 않습니다.

결과를 해석합니다
null과 ""는 저장 형식이 다르지만 이 파이프라인에서는 모두 결손값입니다. 처리
결과는 컬럼의 의미에 따라 달라집니다. 고객·주문 식별자는 없으면 행을 제거하고, 상품만
없으면 미상 상품으로 묶어 주문과 고객의 연결을 보존합니다.
이 계약으로 고객 분석 22행과 고객 22개·주문 88개·상품 9개의 온톨로지를 모두 만들 수 있습니다. 고객-주문 관계와 주문-상품 관계도 각각 88개가 생성됩니다.
다음 판단
세그먼트 계산이 사용할 수 있는 주문 범위를 확인했습니다. 다음 챕터에서는 최근성, 빈도, 금액이라는 세 질문이 어떻게 고객 상태로 바뀌는지 살펴봅니다.