목표
이 튜토리얼에서는 다음을 수행합니다.
- 간단한 산술 계산 필드를 만드는 방법을 알아봅니다.
- 데이터를 평가하고 다른 결과를 반환하는 조건식을 만듭니다.
- 계산된 필드를 구현하는 다양한 접근 방식을 알아봅니다.
시나리오
온라인 반려동물 전문점을 관리한다고 가정합니다. 제품 코드 (SKU), 상품 이름, 가격, 판매 수량과 같은 판매 데이터를 측정할 수 있습니다. 다음은 간단한 예입니다.
SKU | 항목 | 가격 | 판매 수량 |
---|---|---|---|
D-001 | 건강한 개 사료 | 79.96 |
16 |
B-002 | 앵무새 횃대 | 74.97 |
8 |
B-001 | 예쁜 새 새모이 | 31.96 |
20 |
C-002 | 배고픈 새끼 고양이 사료 | 29.98 |
3 |
D-002 | 즐거운 강아지 장난감 | 17.97 |
11 |
C-001 | 행복한 고양이 캣닙 |
14.97 |
4 |
Looker Studio의 계산된 필드는 이 데이터를 처리하고 확장하는 데 도움이 됩니다. 이 연습에서는 계산된 필드를 사용하여 다음 작업을 실행합니다.
- 각 주문의 총 가치를 계산합니다.
- 특정 금액 이상의 주문에 할인을 적용합니다.
- 판매를 부서별로 분류합니다.
샘플 데이터
이 연습을 서면으로 완료하려면 다음 샘플 데이터를 사용하세요. 그렇지 않으면 나만의 데이터를 사용하세요 (필요에 따라 필드 이름을 조정합니다). Google Sheets에 액세스해야 합니다. 파일 업로드 커넥터를 사용하여 데이터를 Looker Studio로 가져올 수도 있습니다.
이 데이터를 복사하여 텍스트 파일에 붙여넣습니다.
SKU,Item,Price,Qty Sold D-001,Healthy Dog Dog Food,79.96,16 B-002,Parrot Perch,74.97,8 B-001,Pretty Bird Bird Seed,31.96,20 C-002,Hungry Kitty Cat Food,29.98,3 D-002,Playful Puppy Toy,17.97,11 C-001,Happy Cat Catnip,14.97,4
1단계: 데이터 준비
목표: 앞에서 표시된 샘플 데이터를 사용하여 Google Sheets를 만듭니다.
- 이전 상자에 샘플 데이터를 복사합니다.
- 텍스트 편집기를 열고 샘플 데이터를 붙여넣은 후 파일을
pet-store-data.csv
로 저장합니다.
Sheets에서 파일 > 가져오기를 선택합니다.
업로드를 선택한 다음 2단계에서 만든 샘플 데이터 파일을 업로드합니다.
스프레드시트 바꾸기를 선택합니다.
스프레드시트 이름을
Pet Store
로 지정합니다.
2단계: 보고서 만들기 및 데이터 추가하기
목표: 데이터 소스를 Pet Store 스프레드시트에 연결하고 보고서에 추가합니다.
- Looker Studio에서 새 보고서를 만듭니다.
- 보고서에 데이터 추가 패널에서 Google Sheets 커넥터를 선택합니다.
- 방금 만든
Pet Store
스프레드시트 및 워크시트를 선택합니다. - 기본 옵션을 선택된 상태로 둡니다.
- 추가를 클릭합니다.
잠시 후 새 보고서가 표시되며, 여기에는 Pet Store 데이터 소스의 필드를 사용하는 캔버스에 표가 표시됩니다.
3단계: 소계 필드 만들기
목표: 주문 소계를 계산하는 필드를 만듭니다.
메뉴에서 리소스 > 추가된 데이터 소스 관리를 선택합니다.
Pet Store 데이터 소스를 찾아 수정을 클릭합니다.
데이터 소스 필드 패널이 나타납니다.
필드 추가를 클릭합니다.
계산된 필드 편집기가 표시됩니다.
필드 이름에
Subtotal
을 입력합니다.수식에
Price * Qty Sold
을 입력합니다.저장을 클릭합니다.
모든 필드를 클릭하여 기본 데이터 소스 편집기로 돌아갑니다.
4단계: 할인 필드 만들기
목표: 특정 값의 주문에 가변 할인율을 적용하는 필드를 만듭니다.
주문 금액에 따라 다른 할인율을 적용하려고 한다고 가정해 보겠습니다. 소계 필드를 평가하고 다음 할인을 적용하는 Discount
라는 또 다른 계산된 필드를 만듭니다.
소계 값 | 할인율 |
0~99 | 0 |
100~499명 | 5% |
500명 이상 | 10% |
힌트:
- 이 단계에서는 할인만 계산합니다. 다음 단계에서 소계 필드에 할인 필드를 곱하여 적용합니다.
CASE
표현식을 사용하여 소계 필드를 평가합니다.
- 각 할인율에
WHEN
절을 사용합니다.ELSE
절을 사용하여 정가를 반환합니다 (0% 할인).- 할인을 소수점 값으로 표현합니다. 예를 들어 25% 할인은 .25가 됩니다.
솔루션
CASE WHEN Subtotal > 499 THEN .9 WHEN Subtotal > 100 THEN .95 ELSE 1 END
5단계: 합계 필드 만들기
목표: 소계에 할인율을 적용하는 필드를 만듭니다.
소계 필드에 할인 필드를 곱하는 Total
라는 또 다른 계산된 필드를 만듭니다.
솔루션
Subtotal * Discount
6단계: 부서 필드 만들기
목표: 판매된 상품을 부서별로 분류하는 계산된 필드를 만듭니다.
SKU 필드를 파싱하고 SKU에 따라 새 값을 지정하는 Department
라는 최종 계산된 필드를 만듭니다. 개, 고양이, 새 관련 품목을 별도의 부서로 그룹화합니다.
힌트: 이번에는
STARTS_WITH
(또는REGEXP_MATCH
) 함수를 이용해CASE
문을 다시 사용해 보세요.
솔루션
CASE WHEN STARTS_WITH(SKU, "C") THEN "Cat" WHEN STARTS_WITH(SKU, "D") THEN "Dog" WHEN STARTS_WITH(SKU, "B") THEN "Bird" ELSE "Misc" END
7단계: 보고서에서 데이터 보기
목표: 계산된 필드를 시각화합니다.
- 부서 필드를 저장한 후 왼쪽에서 모든 필드를 클릭하여 데이터 소스 편집기로 돌아갑니다.
- 완료를 클릭한 다음 데이터 소스 관리 패널을 닫습니다.
이제 다음 단계에 따라 새 계산된 필드를 차트에 추가할 수 있습니다.
- 표를 선택합니다.
- 만든 각 계산된 필드를 데이터 패널에서 표로 또는 표의 설정 패널로 드래그하여 표에 추가합니다.
대안 솔루션도
이전 솔루션에서는 문제를 개별 청크로 나누고 각 청크를 처리하기 위해 별개의 필드를 생성했습니다(소계, 할인, 합계 필드에서 했던 것과 마찬가지로).
또 다른 접근 방식은 계산된 필드 하나에서 모든 계산을 수행하는 것입니다. 예를 들어 이 튜토리얼의 3~5단계를 하나의 필드로 통합할 수 있습니다.
CASE WHEN Price * Qty Sold > 499 THEN (Price * Qty Sold) * .9 WHEN Price * Qty Sold > 100 THEN (Price * Qty Sold) * .95 ELSE Price * Qty Sold END
이 방법에는 각각 장점과 단점이 있습니다.
복잡한 수식을 별도의 필드로 나누면 수식을 보다 쉽게 읽고 작성할 수 있으며 오류가 발생할 가능성이 낮아집니다. 또한 별도의 필드는 다양한 맥락에서 유용할 수 있습니다. 예를 들어 할인율에 별도의 필드를 사용하면 해당 필드를 다른 계산에 사용하거나 보고서에 표시할 수 있습니다. 별개의 계산된 필드가 여러 개 있는 수식을 만들 때 한 가지 단점은 각 필드가 무엇을 하는지 명확하지 않을 수도 있어 계산 방법을 확인하려면 각 필드를 개별적으로 수정해야 한다는 점입니다.
반면에 모든 로직을 하나의 필드에 중앙 집중화하면 손쉽게 이해하고 수정할 수 있는 간단한 수식을 만들 수 있습니다. 하지만 반복적으로 입력해야 할 수도 있으며, 복잡한 수식은 확장하거나 유지 관리하기가 어려울 수 있습니다. 예를 들어 주문 수량 기준이 다른 제품 수준이 10개 있다고 가정해 보겠습니다. 다른 제품 라인에 동일한 할인을 적용하고자 한다고 가정해 보겠습니다. 이러한 경우, 해당 기준 및 할인에 별도의 필드를 사용하는 것이 더욱 간단하고 효율적일 수 있습니다.
절충안
이 솔루션은 이전에 설명한 두 가지 접근 방식을 혼합합니다. 주요 로직을 단일 필드에 유지하면서 일부 종속 로직은 별도의 필드로 분리합니다.
CASE WHEN Subtotal > Large Order THEN Subtotal * Large Order Discount WHEN Subtotal > Medium Order THEN Subtotal * Medium Order Discount ELSE Subtotal END
이 솔루션에서는 대량/중간 규모 주문 및 관련 할인이 적용되는 별도의 필드를 만들었습니다.
이 솔루션은 읽기 쉽고, 유연하고, 필요에 따라 비교적 쉽게 조정할 수 있다는 장점이 있습니다.