Power BI DAX – IF 함수로 조건부 계산하기

이미지
 # Power BI DAX – Conditional Calculation with IF Function   가격이 100,000원 이상인 제품만 계산하고 싶다면? Power BI에서 데이터 분석을 하다 보면, 특정 조건에 해당하는 데이터만 따로 계산하거나 표시하고 싶을 때 가 많아요. 예를 들어, 제품 가격이 100,000원 이상인 경우만 "고가 제품"으로 분류 하고 싶을 때 아니면, 그 이상의 제품만 갯수를 세고 싶을 때 이럴 때 사용하는 함수가 바로 IF 함수 입니다! 1. IF 함수 기본 구조 I F(<조건>, <참일 때 결과>, <거짓일 때 결과>) 예를 들어, 가격이 100,000 이상이면 "High", 아니면 "Normal" 이라고 표시하고 싶다면 이렇게 작성해요. Measure(측정값)을 밖에서 만들어 낼 수도 있지만 이번에는 직접 테이블 안의 열을 삽입 해서 작성하는 방법을 알려드릴게 요. P_Level = IF([Price] >= 100,000, "High", "Normal") 수식 작성 후 커밋 버튼 (초록 체크표시) 을 누릅니다. 보시는 것처럼 P_Level 열이 d_Product 테이블 안에 생성된 것을 확인하실 수 있어요. 2. 예제: 가격이 35,000원 이상인 제품만 따로 세기 이번에는 가격이 35,000원 이상인 제품의 수 만 구하고 싶다고 해볼게요. 아래처럼 새로운 측정값을 만들어줍니다. P_over35K = CALCULATE( COUNTROWS(d_product), FILTER( d_Product, d_Product[Price] >= 35000 ) ) Filter 안에 조건을 넣고 그 결과로 countrows를 계산하는 방식으로 d_Product 테이블에서 조건에 맞는 행만 필터링 하고, 그 ...

Power BI DAX – SWITCH 함수로 영어 카테고리를 한글로 바꾸기

이미지
# Power BI DAX – Converting English Categories to Korean Using the SWITCH Function Power BI에서 데이터 시각화를 하다 보면 영문으로 된 카테고리명을 한글로 변환해서 보여주고 싶을 때 가 많아요. 예를 들어, "shirts"는 "상의" "pants"는 "하의" "shoes"는 "신발" 이렇게 깔끔하게 한글로 보여주고 싶을 때 SWITCH 함수 를 활용하면 정말 편리하답니다. 1. SWITCH 함수란? 간단히 말해, 조건별로 다른 값을 반환하는 함수 예요. 엑셀의 IF , IF … 대신 SWITCH 하나로 여러 조건을 처리 할 수 있어요. 2. 기본 문법 SWITCH(<expression>, <value1>, <result1>, <value2>, <result2>, ..., [<else>]) expression : 비교할 값 value1 , value2 …: 조건 값 result1 , result2 …: 해당 조건일 때 반환할 값 [else] : 아무 조건에도 해당하지 않을 때 반환할 기본값 (선택사항) 3. 예제: 영어 제품명을 한글로 바꾸기 제품명이 T-Shirts , Skirt, Jacket, Pants  로 되어 있다고 가정할게요. DAX로 새 열을 만들어 한글로 바꾸려면 이렇게 작성하면 됩니다. Product(K) = SWITCH(   [Product] , "T-Shirts" , "티셔츠"     ,  "Skirt", "치마"     ,  "Jacket", "자켓"     ,  "Pants", "바지...

Power BI DAX 기초부터! 데이터 분석의 첫걸음

이미지
 # What's the DAX in Power BI 데이터 분석을 하다 보면 단순한 그래프만으로는 부족할 때가 많죠. 특정 조건에 맞는 합계를 구하거나, 월별로 누적 값을 계산하거나, 그럴 때 꼭 필요한 게 바로 DAX 입니다! 오늘은 Power BI에서 자주 쓰이는 DAX의 기본 개념과 사용법 을 예제와 함께 천천히 알아보겠습니다.  1.DAX란? DAX는 Data Analysis Expressions 의 약자로, Power BI, Excel Power Pivot, SSAS 등에서 사용하는 수식 언어 입니다. 엑셀의 함수와 유사하지만, 데이터 모델을 기반으로 계산된 열, 측정값(Measure) 등을 만들 수 있어요. 2. DAX 기본 구조는 이렇게 생겼어요! = 함수명(컬럼 또는 테이블, 조건 등) 예를 들어 매출 합계를 구하려면? Total Amount = SUM(Sales[Amount]) Sales 테이블의 "Amount" 컬럼을 합산 한 값이에요. 이건 "측정값(Measure)" 으로 만들어서 시각화에 사용할 수 있죠. 3. 예제 실습: 간단한 매출 분석 Power BI에서 f_sales 테이블을 불러옵니다. 총 수량을 측정값으로 만들어 보겠습니다.   필드 창 → 마우스 오른쪽 클릭 →  새 측정값 선택 후 아래처럼 입력합니다. 함수를 입력하면 아래처럼 연관된 DAX 함수가 보이게 되요. Total_QTY = SUM(f_sales[QTY]) 만들어진  Total Sales를 테이블 위에 드래그하면 전체 합계가 보여집니다. 4. 조건별 합계도 가능할까?  예를 들어, Product가 Shirts 인  매출 만 따로 보고 싶다면  Calculate 함수를 사용해야 해요. QTY_Shirts =           CALCULATE(       ...

Power BI 데이터 모델링 - 단방향과 양방향 관계, 어떤 차이일까?

이미지
# What's the difference single way  relationship & Two way  relationship in data modeling  데이터를 시각화하면서 처음 마주치는 개념 중 하나가 바로 테이블 간의 관계 방향 입니다. Power BI에서는 테이블을 서로 연결할 때 관계 방향을 단방향(Single) 또는 양방향(Two)  으로 설정할 수 있어요. 이번 글에서는 이 차이가 어떤 의미인지, 그리고 사용할 때 주의할 점은 무엇인지 쉽게 정리해볼게요! 1. 단방향 필터(Single relationship)란? 기본적으로 Power BI는 관계를 만들 때 단방향 필터 를 사용합니다. 예를 들어, DimProduct (제품 테이블) 과 FactSales (판매 테이블) 가 연결되어 있다면, 제품 테이블에서 판매 테이블로만 필터가 흐릅니다. 이 구조에서는 제품을 선택했을 때 그에 해당하는 판매 데이터만 보여지지만, 판매 데이터를 필터해도 제품 테이블은 영향을 받지 않아요. >> 단방향은 대부분의 상황에서 성능과 안정성 면에서 좋습니다. 2. 양방향 필터(Two way relationship)란? 양방향은 말 그대로 필터가 양쪽으로 흐르는 설정 이에요. DimProduct → FactSales (판매로도 필터) FactSales → DimProduct (제품으로도 필터) 관계 편집에서 아래와 같이 설정하면 적용됩니다. 이 설정은 다중 테이블을 교차로 필터해야 하는 상황 , 예를 들어 고객 테이블 ↔ 주문 테이블 ↔ 지역 테이블 처럼 중간 테이블이 있을 경우에 유용합니다. 3. 양방향 필터, 왜 조심해야 할까? 양방향은 유용하지만, 다음과 같은 단점 이 있습니다: * 성능저하 : 보고서 필터링이 복잡해 질수록 처리 속도 저하 * 순환 관계 발생 위험 : 서로 필터를 주고받는 구조가 얽히면 오류 발생 가능 * 불필요한 필터링 : 원하...

Power BI 데이터 모델링 - 실제 예제를 보며 쉽게 배우기!

이미지
  # How to data modeling in Power BI 이번 글에서는  엑셀 데이터를 활용해 Power BI에서 스타 스키마 모델링을 만드는 방법 을 정리해보려 해요. 아래 예시는 제가 실제로 분석을 위해 만든 테이블로 이해하기 쉽게 작성했습니다. 1. 샘플 데이터 준비하기 우선 엑셀에서 기본 데이터 세트를 만들었어요. 총 4개의 시트로 구성했습니다. Fact_Sales : 주문일자, 주문번호, 고객번호, 제품, 카테고리, 가격, 수량, 지불수단, 지역 Dim_Product : 제품명, 카테고리 Dim_Payment : 지불수단, 지불수단 코드 2. 테이블 관계 연결은 어떻게 하나요? 공통 열(키)이 존재해야 합니다. 두 테이블 모두에 존재하는 열 이어야 함 일반적으로: 사실 테이블:  여러 개의 중복 값 차원 테이블:  고유한 값(Primary Key) 예시 (하단 참조)        FactSales[Product]  ↔  DimProduct[Product]    FactSales[Payment]  ↔  DimPayment[code] 3. 실제 연결하기 (스타스키마) 모델 탭으로 가서 각 테이블 간 관계를 드래그로 연결했어요. 연결하면, 관계확인을 위한 창이 뜹니다. 방향설정, 일대일, 일대 다 등 설정하는 것이지요. 확인 버튼을 누르면 됩니다. 이렇게 하면 중앙에 사실 테이블( FactSales ), 그 주변에 차원 테이블이 위치한  별 모양 구조 가 완성됩니다. 마무리 이제, 각 테이블의 고유한 키값으로 데이터 모델링이 되었습니다. 위 예시는 아주 단순한 테이블로 보여드렸지만, 분석이 복잡해 질수록 모델링 관계도 다양해 집니다. 데이터 모델링이 되어야 DAX 수식을 이용해 쉽게 데이터를 분석할 수 있다는 것 잊지 마세요!

Power BI 파워쿼리 - 첫 행을 머리글로 사용하기

이미지
#  Power BI Power Query – Use First Row as Headers Power BI에서 데이터를 불러오다 보면, 엑셀이나 CSV 파일의 첫 번째 행이 실제 데이터가 아니라 열 이름(헤더) 인 경우가 많습니다. 이럴 때는 닫기 누르고 다시 파일을 로드하실 필요가 없습니다. 당황하지 마시고  파워쿼리(Power Query) 에서 "첫 행을 머리글로 사용" 기능을 통해 쉽게 처리할 수 있습니다. 1. 파워쿼리 편집기 열기 불러온 데이터를 편집하려면    데이터 변환 을   클릭 해서 파워쿼리 편집기 로 이동합니다. 2. 첫 행을 머리글로 설정 파워쿼리 편집기 상단 메뉴에서 아래를 클릭하세요: 홈 > 첫 행을 머리글로 사용 이 기능을 누르면, 데이터의 첫 번째 행이 열 이름으로 자동 설정 됩니다. 그러면, 아래와 같이 적용되게 됩니다. 3. 반대로, 머리글을 첫 행으로 되돌리고 싶다면? 홈 > 머리글을 첫 행으로 사용 을 클릭하면, 기존 열 이름이 다시 데이터로 내려갑니다. 마무리 설정을 마쳤다면,  홈 > 닫기 및 적용  을 눌러 변경사항을 Power BI 보고서에 반영하세요. 이렇게 간단한 설정 하나로도, 데이터 정리가 훨씬 수월해지고 시각화 품질도 높아집니다. Power BI의 파워쿼리 기능을 잘 활용하면 복잡한 데이터도 효율적으로 관리 할 수 있어요!

Power BI 우측 메뉴 완전정복

이미지
#A Quick Guide the Main Components Power BI_Right menu   데이터부터 서식, 성능 분석기까지 한눈에 보기 Power BI의 오른쪽 사이드 패널에는  분석과 디자인 작업에 중요한 기능들 이 모여 있어요. 지난 글에서 왼쪽 메뉴에 대해 알아보았고, 이번 글에서는 우측 메뉴에서 자주 사용하는 5가지 탭을 핵심만 간단히 정리해볼게요. 1. 데이터(Data) 탭 가장 기본이 되는 탭으로,  모델에 포함된 모든 테이블과 필드 가 표시됩니다. 여기서 필요한 필드를 직접 시각화에 드래그하거나, 계산 열/측정값도 확인할 수 있어요. 테이블별로 컬럼 구조 한눈에 확인 필드별 드릴다운도 가능 사용자 지정 측정값 추가 시에도 사용 2. 빌드(Build) 또는 시각화(Visualizations) 탭 이 탭은  시각화 요소를 구성 하는 공간입니다. 선택한 시각화 유형에 따라 필요한 필드를 어떤 항목에 매핑할지 설정할 수 있어요. 예: 축(X/Y), 값(Value), 범례(Legend), 도구 설명(Tooltip) 등 다양한 차트 유형 선택 가능 필드 드래그 앤 드롭으로 빠르게 시각화 구성 꺾은선형, 원형, 테이블 등 시각화 옵션 다양 3. 서식(Format) 탭 선택한 시각화의  색상, 제목, 테두리, 배경, 정렬 등  디자인을 조정하는 곳이에요. 보고서를 더 깔끔하고 일관되게 만들기 위해 반드시 활용해야 하는 탭입니다. 제목, 데이터 레이블, 글꼴 크기 조정 가능 테두리, 배경색, 그림자 효과 등 디자인 요소 추가 테마에 맞춘 통일감 있는 보고서 제작 가능 4. 성능 분석기(Performance Analyzer) 성능 분석기는  시각화 요소별 로딩 시간 을 측정해주는 기능이에요. 보고서가 느릴 경우, 어떤 시각화가 병목을 일으키는지 확인하고 최적화할 수 있습니다. (시각화 했을 때 어디서 시간을 지연시키는지 파악할 수 있어 유용합니다.) 보고서 전체 또는 개별 시각화의  ...