분석가가 복잡한 데이터, DAX 및 대시보드를 Power BI를 사용해 실행으로 전환하는 방법
Source: Dev.to
위 링크에 포함된 전체 텍스트를 제공해 주시면, 해당 내용을 한국어로 번역해 드리겠습니다.
(코드 블록, URL, 마크다운 형식 등은 원본 그대로 유지됩니다.)
소개
Power BI는 강력한 도구로:
- 데이터 정리
- 보고서 작성
- 대시보드 구축
다른 솔루션보다 선호되는 이유는:
- 대용량 데이터 세트를 효율적으로 처리
- 실시간 대시보드 지원
- 초보자 친화적
Power BI Desktop – Microsoft가 제공하는 무료 버전 –은 이러한 모든 기능을 비용 없이 제공합니다.
Power BI의 주요 활용
- 다양한 데이터 소스에 연결 – 웹 서비스, Excel 파일, SQL 데이터베이스 등.
- 데이터 정리 및 변환 – 원시 데이터를 형태화하고, 병합하며, 분석을 위해 풍부하게 만들기.
- 데이터 모델 구축 – 관계, 계산된 열, 측정값 정의.
- DAX로 데이터 분석 – 강력한 계산 및 시계열 인텔리전스 로직 생성.
- 데이터 시각화 – 차트, 지도, 필터, 슬라이서 및 기타 인터랙티브 시각 요소 설계.
- 보고서 및 대시보드 생성 – 시각화를 공유 가능하고 인터랙티브한 레이아웃으로 조합.
- 자동화, 공유 및 협업 – 예약된 새로 고침, 배포 및 팀 작업을 위해 Power BI 서비스에 게시.
Power BI에서 데이터 정리
데이터 분석가는 복잡한 데이터 세트를 다루며, 데이터 정리는 단순히 행을 삭제하거나 열 이름을 바꾸는 수준을 넘어섭니다. Power BI의 강력한 ETL(Extract, Transform, Load) 엔진은 지저분한 데이터를 정확하고 일관된, 분석 준비가 된 정보로 변환하는 데 도움을 줍니다.
Power BI는 열의 품질과 분포를 보여주어 불일치를 쉽게 찾아낼 수 있습니다. 대부분의 정리는 Power Query 편집기에서 이루어집니다.

데이터가 “지저분”해지는 이유
일반적인 문제는 다음과 같습니다.
- 빈 행 또는 누락된 값
- 중복 레코드
- 잘못된 데이터 유형
- 일관성 없는 텍스트 형식(예: “kiambu”, “MOMBASA”)
흔히 수행하는 정리 작업
1. 중복 제거
특정 열(또는 열 집합)에 고유값이 있어야 한다면 해당 열을 선택 → Remove Duplicates.
2. 올바른 형식 지정
| 데이터 유형 | 예시 열 |
|---|---|
| 텍스트 | Employee Name, Country, Product Type |
| 소수점 숫자 | Market Price, Revenue, Gross Profit |
| 정수/소수점 | Farmer Code (사용 목적에 따라) |
| 날짜 | Planting Date, Harvest Date |
- Transform > Detect Data Type을 사용해 Power Query가 올바른 유형을 추론하도록 합니다.
- 잘못 감지된 열은 수동으로 조정합니다.
3. 오류 및 빈 값 처리
| 열 유형 | 권장 조치 |
|---|---|
| 숫자 | 오류는 제거하고, 빈 값은 그대로 둡니다(0으로 대체하는 경우는 의미가 있을 때만). |
| 텍스트 | null/오류를 **“Not provided”**와 같은 자리표시자로 교체합니다. |
| 일반 | 전체 행을 삭제하는 것은 실제로 사용할 수 없을 때만 합니다. Replace Values → Error → Not provided를 사용합니다. |
4. 텍스트 표준화
- Trim – 앞뒤 공백 제거.
- Uppercase / Proper case – 필요한 대소문자 적용(예:
Text.Upper,Text.Proper).
데이터 정리가 중요한 이유
- 정확한 분석 – 오해를 일으키는 인사이트 감소.
- Power BI 성능 향상 – 작고 깨끗한 모델이 더 빠르게 로드됩니다.
- 데이터 모델링 단순화 – 관계 및 DAX 계산이 예상대로 동작합니다.
정리를 마친 후 Transform > Detect Data Type을 다시 실행해 열 유형을 확인하고, Close & Apply를 클릭해 정리된 데이터를 Power BI에 로드합니다.
Source: …
Power BI의 DAX
프로그래밍처럼 들리죠?
DAX(Data Analysis Expressions)는 Power BI에서 측정값, 계산된 열, 계산된 테이블을 만들 때 사용하는 수식 언어입니다. 주로 집계 및 반복자 함수를 통해 원시 데이터를 의미 있는 인사이트로 변환할 수 있습니다.
집계 함수
집계는 여러 행의 데이터를 하나의 값으로 결합합니다.
| 함수 | 설명 | 예시 |
|---|---|---|
| SUM | 숫자 열의 모든 값을 합산합니다. | Total Revenue = SUM('Kenya Crops'[Revenue (KES)]) |
| AVERAGE | 열의 평균값을 계산합니다. | Average Market Price = AVERAGE('Kenya Crops'[Market Price (KES/Kg)]) |
| MIN | 열에서 가장 작은 값을 반환합니다. | Minimum Yield = MIN('Kenya Crops'[Yield (Kg)]) |
| MAX | 열에서 가장 큰 값을 반환합니다. | Maximum Profit = MAX('Kenya Crops'[Profit (KES)]) |
| MEDIAN | 열의 중간값을 반환합니다. | Median Profit = MEDIAN('Kenya Crops'[Profit (KES)]) |
| COUNT | 열에서 숫자(또는 비어 있지 않은) 값을 셉니다. | Yield Count = COUNT('Kenya Crops'[Yield (Kg)]) |
반복자 함수
반복자는 표현식을 행별로 평가한 뒤 결과를 집계합니다.
SUMX
Total Profit (SUMX) =
SUMX (
'Kenya Crops',
'Kenya Crops'[Revenue (KES)] - 'Kenya Crops'[Cost of Production (KES)]
)
AVERAGEX
Average Profit per Acre =
AVERAGEX (
'Kenya Crops',
DIVIDE (
'Kenya Crops'[Profit (KES)],
'Kenya Crops'[Planted Area (Acres)]
)
)
COUNTX
Profitable Farms Count =
COUNTX (
'Kenya Crops',
IF ( 'Kenya Crops'[Profit (KES)] > 0, 1 )
)
논리 함수
논리 함수는 조건에 따라 결정을 내릴 수 있게 해 줍니다(예: IF, AND, OR).
예시 – 손익 구분 (측정값)
Profit Status =
IF (
SUM ( 'Kenya Crops'[Profit (KES)] ) > 0,
"Profitable",
"Loss"
)
Power BI 대시보드
대시보드는 비즈니스가 특정 질문에 신속하게 답할 수 있도록 신중하게 설계된 시각화 모음입니다. 한 페이지에 핵심 요소들을 고수준으로 보여주어 한눈에 스토리를 전달합니다.
대시보드의 주요 요소
- KPI 카드 – 예: 매출, 방문자 수, 이익
- 추세선 – 예: 연도별 판매량
- 상위/하위 성과자
- 알림 – 임계값 기반 알림
- 필터 및 슬라이서 – 예: 날짜, 지역
좋은 대시보드 만들기 팁
- 시각화를 너무 많이 배치해 과밀해지지 않도록 합니다.
- 계산은 간단하고 성능이 좋게 유지합니다.
- 색상과 글꼴을 일관되게 사용합니다.
- 명확한 제목과 라벨을 제공합니다.
- 인터랙티브 기능(필터, 드릴스루)이 직관적이어야 합니다.
Dashboard Layout Principles
- Reading order – Users scan dashboards from top‑to‑bottom and left‑to‑right.
- Priority – Place the most important information in the top‑left corner.
Typical Sections
| Section | Purpose | Recommended Visuals |
|---|---|---|
| Top | Key Performance Indicators (KPIs) | Cards (single‑value visuals) |
| Middle | Trend and performance analysis | Line, column, bar, area charts, etc. |
| Bottom | Supporting breakdowns & detailed comparisons | Matrices, tables, detailed charts |
| Filters | Easy access for users | Position at the top or along one side of the dashboard |
대시보드에서 사용되는 주요 시각화
차트
컬럼 차트
컬럼 차트는 세로 막대를 사용하여 카테고리별 값을 비교하는 방식으로 데이터를 표시합니다.

바 차트
컬럼 차트와 유사하지만 가로 막대를 사용합니다.

라인 차트
연결된 데이터 포인트를 사용해 시간에 따른 추세를 보여줍니다 (예: 연도별 총이익).

파이 & 도넛 차트
전체에 대한 몇 개 카테고리(2–5)의 비율 기여도를 표시하는 데 가장 적합합니다 (예: 작물 유형별 매출 비중).

카드 시각화
단일 집계 값을 표시합니다 (예: 총 매출, 총 이익).

매트릭스 시각화
행과 열을 가진 피벗 테이블처럼 작동합니다 (예: 군 및 시즌별 매출).

산점도 차트
두 개의 수치 변수 간 관계를 보여줍니다 (예: 비용 대비 매출, 수확량 대비 이익).

버블 지도
버블을 사용해 규모를 나타내며 지리적 지도에 데이터를 표시합니다 (예: 국가별 총이익).

인터랙티브 대시보드 예시

결론
효과적인 분석은 정확하고 일관되며 잘‑정제된 데이터에 의존합니다.
DAX는 분석가가 정제된 데이터를 의미 있는 인사이트로 변환하도록 지원하고, 신중하게 설계된 대시보드는 이해관계자가 정보에 기반한 효과적인 결정을 내릴 수 있게 합니다.