Power BI: 지저분한 데이터를 실행 가능한 인사이트로 전환
Source: Dev.to
조직 내에서 데이터 분석가는 다양한 데이터 세트에서 의미를 도출하는 중요한 역할을 맡고 있습니다. 원시 형태의 데이터는 의미 있는 변화를 이끌어낼 수 있는 실질적인 인사이트를 제공하지 못합니다. 여기서 분석가가 등장합니다: 데이터를 정제하고, 분석하며, 시각화합니다. 이러한 작업을 수행하기 위해 분석가는 다양한 분석 도구를 사용합니다—업계에서 가장 널리 사용되는 도구 중 하나가 Power BI입니다.
이 글에서는 데이터 분석가와 데이터 전문가가 Power BI를 활용해 복잡한 데이터를 실용적인 인사이트로 전환하는 방법을 다음과 같이 설명합니다:
- Power Query를 이용한 데이터 변환
- DAX(Data Analysis Expressions)를 활용한 분석
- 시각화 및 대시보드 만들기
Power BI란?
Power BI는 Microsoft의 Power Platform의 일부인 비즈니스 분석 및 인텔리전스 도구입니다. 다음을 할 수 있습니다:
- 데이터를 분석합니다
- 대시보드와 인터랙티브 시각 보고서를 생성합니다
Power BI는 Microsoft Store에서 직접 다운로드할 수 있습니다 – Download Power BI.
주요 인터페이스 요소
| 영역 | 설명 |
|---|---|
| 리본 (상단) | Home, Insert, Modeling, View, Optimize, Help와 같은 탭으로 구성됩니다 |
| 네비게이션 창 (좌측) | Report view, Data view, Model view, DAX query / TMDL view를 포함합니다 |
| 시각화 창 | 막대 차트, 선 차트, 지도, 표 등 시각 유형을 선택할 수 있으며, 시각 서식 옵션 및 시각 수준 필터 관리 기능을 제공합니다 |
| 필드 창 | 로드된 데이터셋의 테이블, 열, 측정값을 표시합니다 |
| 필터 창 | 시각 수준, 페이지 수준, 보고서 수준 등 다양한 레벨에서 필터를 적용하는 데 사용됩니다 |
데이터 로드
Power BI의 직관적인 탐색을 통해 분석가는 다양한 형식의 파일을 로드할 수 있습니다, 예:
- CSV, 텍스트, Excel
- Dataflow, Dataverse 등
데이터 가져오기 방법:
Home → Get Data
Power Query를 이용한 데이터 변환
조직에서 얻은 데이터는 종종 일관성 부족, 누락값, 중복 또는 오류를 포함합니다. 데이터 변환은 이러한 데이터를 정리하고, 형태를 바꾸며, 정확하고 일관되며 분석에 적합하도록 준비하는 과정입니다.
Power BI에는 Power Query라는 데이터 준비 및 변환 전용 도구가 포함되어 있습니다.
Power Query 여는 방법:
Home → Transform Data
이렇게 하면 별도의 창에서 Power Query 편집기가 열립니다.
일반적인 변환 워크플로우
- Select rows/columns(수정하려는 행/열)를 선택합니다.
- 편집기의 리본을 사용하여 Remove, Split, Merge, Change Data Type 등과 같은 작업을 수행합니다.
- 완료되면 Close & Apply를 클릭하여 변경 사항을 Power BI에 적용합니다.
DAX를 사용한 데이터 분석
데이터가 정리된 후, 다음 단계는 분석—데이터를 검토하여 패턴, 추세, 그리고 의사결정을 지원하는 인사이트를 발견하는 것입니다. Power BI에서는 주로 Data Analysis Expressions (DAX), 데이터 모델에 대한 계산을 위해 설계된 수식 언어를 사용해 분석을 수행합니다.
DAX 함수 5가지 주요 카테고리
| Category | Purpose |
|---|---|
| Aggregate | 데이터를 요약 (예: SUM, AVERAGE, SUMX, AVERAGEX) |
| Logical | 조건을 테스트하고 TRUE/FALSE 반환 |
| Calculate & Filter | 필터 또는 컨텍스트에 따라 동적으로 계산 수행 |
| Text | 텍스트 열을 조작 |
| Date & Time | 날짜, 기간 및 시간 인텔리전스를 다룸 |
측정값 vs. 열
- Measure – 현재 필터 컨텍스트를 기반으로 실시간으로 계산됩니다.
- Column – 데이터 모델이 새로 고침될 때 행별로 계산됩니다.
새 측정값 또는 열 만들기:
Modeling → New Measure (or) New Column
일반 DAX 함수
집계 함수
-- SUM
Total Sales = SUM(Sales[Amount])
-- AVERAGE
Average Sales = AVERAGE(Sales[Amount])
-- SUMX (row‑by‑row expression)
Total Revenue = SUMX(Sales, Sales[Quantity] * Sales[UnitPrice])
-- AVERAGEX
Average Revenue per Transaction = AVERAGEX(Sales, Sales[Quantity] * Sales[UnitPrice])
-- MAX
Max Sale = MAX(Sales[Amount])
-- MIN
Min Sale = MIN(Sales[Amount])
논리 및 조건 함수
-- IF
Result = IF( Sales[Quantity] > 10, "Large", "Small" )
-- AND
Result = IF( AND( Sales[Quantity] > 10, Sales[Region] = "East" ), "Large East", "Other" )
-- OR
Result = IF( OR( Sales[Quantity] > 10, Sales[Region] = "East" ), "Large or East", "Other" )
-- NOT
Result = IF( NOT( Sales[Quantity] > 10 ), "Not Large", "Large" )
여러 조건은 && (AND) 및 || (OR) 연산자를 사용하여 표현할 수도 있습니다:
Result = IF( Sales[Quantity] > 10 && Sales[Region] = "East", "Large East", "Other" )
고급 함수
-- CALCULATE (changes filter context)
Result = CALCULATE( SUM(Sales[Amount]), Sales[Region] = "West" )
-- FILTER (returns a table that meets a condition)
WestSales = FILTER( Sales, Sales[Region] = "West" )
요약
Power BI는 data ingestion → transformation with Power Query → analysis with DAX → visualization와 같은 원활한 워크플로우를 제공합니다. 탐색, 데이터 로드 옵션, Power Query 편집기, DAX 함수를 마스터함으로써 분석가는 복잡하고 원시적인 데이터를 실행 가능한 인사이트와 매력적인 대시보드로 전환할 수 있습니다.
텍스트 함수
| 함수 | 설명 |
|---|---|
| CONCATENATE | 두 텍스트 값을 결합합니다. |
| CONCATENATEX | 열 또는 테이블의 텍스트를 구분 기호와 함께 연결합니다. |
| LEN | 텍스트의 문자 수를 셉니다. |
| UPPER / LOWER | 텍스트를 각각 대문자와 소문자로 변환합니다. |
| PROPER | 각 단어의 첫 글자를 대문자로 만듭니다. |
| TRIM | 텍스트에서 불필요한 공백을 제거합니다 (단어 사이의 단일 공백은 제외). |
Date Functions
| Function | Description |
|---|---|
| TODAY | 현재 날짜를 반환합니다. |
| NOW | 현재 날짜와 시간을 반환합니다. |
| DATE | 연도, 월, 일 구성 요소로부터 날짜를 생성합니다. |
| DAY | 날짜의 일(day) 부분을 추출합니다. |
| MONTH | 날짜의 월 번호를 추출합니다. |
| DATEDIFF | 두 날짜 사이의 차이를 계산합니다. Example: DATEDIFF(lower_date, higher_date, DAY) |
| DATEADD | 날짜를 지정된 일, 월, 연도 수만큼 이동시킵니다. Syntax: shifted_date = DATEADD(date_column, operation, DAY/MONTH/YEAR) where operation is the number of units to shift (e.g., +1, -4). |
시각화 개요
시각화는 차트, 그래프, 테이블, 지도 및 대시보드와 같은 시각적 요소를 사용하여 데이터를 그래픽으로 표현함으로써 정보를 명확하고 효과적으로 전달하는 것입니다. DAX로 측정값을 만든 후에는 Power BI의 Reports 보기에서 이를 시각화할 수 있습니다.
측정값을 시각화하는 단계
- Visualization pane에서 시각화를 선택합니다.
- Fields pane에서 원하는 측정값을 찾아 시각화에 끌어다 놓습니다.
- (선택 사항) Filters pane에서 필터를 적용하여 시각화에 표시되는 내용을 세부 조정합니다.
Power BI 시각화 유형
| 시각화 | 사용 사례 |
|---|---|
| Card | 단일 핵심 값(예: 총 매출, 이익)을 표시합니다. |
| Bar Chart | 수평 막대를 사용해 카테고리별 값을 비교합니다. |
| Column Chart | 수직 막대를 사용해 카테고리 또는 시간에 따른 데이터 변화를 보여줍니다. |
| Line Chart | 연결된 데이터 포인트를 통해 시간 경과에 따른 추세를 보여줍니다. |
| Pie Chart | 전체에 대한 비율을 표시합니다. |
| Donut Chart | 중앙이 비어 있는 파이 차트의 변형입니다. |
| Map | 지리적 위치를 기반으로 데이터를 시각화합니다. |
| Treemap | 중첩된 사각형을 사용해 계층형 데이터를 표시합니다. |
| Scatter Chart | 두 개의 수치 축에 값을 플롯하여 관계를 드러냅니다. |
| Slicer | 보고서에 대한 인터랙티브 필터를 제공합니다. |
| Interactive slicers | 막대, 선, 산점도도 슬라이서 역할을 할 수 있습니다. |
이 모든 시각화는 Visualization pane에서 사용할 수 있습니다.
대시보드
대시보드는 성과를 모니터링하고 빠른 의사결정을 지원하는 데 필요한 핵심 정보를 제공하는 단일 페이지 시각적 디스플레이입니다. 분석 목표에 따라 선택된 가장 중요한 시각 요소들을 하나의 화면에 배치하여 구축됩니다.
마무리 생각
분야나 데이터 유형에 관계없이, 분석가는 구조화된 워크플로우를 따르고 강력한 도구를 활용함으로써 데이터에서 의미를 도출할 수 있습니다. Power BI는 다음과 같은 이유로 이 목적에 적합한 선도적인 플랫폼입니다:
- 직관적인 인터페이스.
- 다양한 데이터 소스 지원.
- Power Query를 통한 강력한 변환 기능.
- DAX를 활용한 고급 계산 및 분석.
- Visualization pane에 풍부한 시각화 옵션.
이러한 기능들을 종합하면, Power BI는 원시 데이터를 실행 가능한 인사이트로 전환하려는 모든 데이터 분석가 및 전문가에게 귀중한 자산이 됩니다.