파워 비아이에서 파워쿼리 에디터로 데이터를 가지고 온 뒤 가장 먼저 확인해야 할 것이 있습니다.

  • 데이터에 오류가 있는지 확인 (셀에 Error로 표시됩니다)
  • 데이터에 결측치가 있는지 확인 (여기서 결측치란 데이터가 누락되거나 계산상의 오류로 인식을 못 하는 경우를 말합니다 - 파워쿼리 에디터에서는 “비어있음”, “NaN”, “빈 문자열”로 표시됩니다)

 

데이터 오류 확인 방법은 아래의 두 가지만 확인하시면 됩니다.

  • 열 품질 확인 (데이터에 오류나 결측치가 있는지 확인)
  • 열 프로필 확인 (좀 더 자세히 열의 정보를 확인)

 

위에서 말씀드린 열 품질 및 열 프로필을 확인하려면 아래와 같이 메뉴에서 보기를 선택하고 데이터 미리 보기 리본에서 열 품질을 선택하면 행이 추가되고, 열 프로필을 선택하면 작업 창 아래에 새로운 창이 추가됩니다.

 

데이터를 수정하는 방법은 다음과 같습니다.

오류 제거

  • 확인
  1. 열 품질 행에서 확인 가능하며, 아래와 같이 Price 열에 오류가 있음을 표시하며 세 번째 행에 Error로 표시가 됩니다. 
  2. Error를 클릭하면 세부정보가 나오는데 여기서는 속성이 숫자인 열에 “A”라는 문자가 입력되어 발생한 오류라고 알려줍니다.

  • 수정
  1. 원 데이터 파일을 열어 A 대신 제대로 된 값을 입력한 뒤 미리 보기 새로 고침을 클릭합니다.
  2. Price 열에서 오른쪽 클릭을 한 뒤 드롭다운 메뉴가 나오면 오류 제거를 선택합니다.

 

결측치 제거

  • 확인
  1. 열 품질 행에서 유효가 100%인지 확인하고, 100%가 아니고 아래에 비어있음이 0%가 아닌 행을 찾습니다.
  2. 해당 열을 선택하면 아래에 열 프로필 창에서 자세히 확인 가능합니다.

 

  • 수정
  1. 원 데이터 파일에서 데이터를 입력한 뒤  미리 보기 새로 고침을 클릭합니다.
  2. 해당 열의 오른쪽에 있는 화살표를 클릭한 뒤 "Null"을 없애줍니다.

 

이런 과정을 거쳐 데이터를 정리한 뒤 전처리 과정으로 들어가셔야 전처리 과정에서 오류도 줄일 수 있으며 양질의 결과를 얻을 수 있으니 반드시 확인하는 습관을 지니시길 바랍니다.

 

파워비아이에는 기본적으로 파워쿼리 에디터 (Power Query Editor)가 내장되어 있습니다. 파워비아이의 메뉴바에서 데이터 변환 버튼을 누르면 파워쿼리 에디터로 들어가 가지고 온 데이터를 수정할 수 있습니다.

 

이를 수행하기 위해 선행되어야 하는 것이 데이터 가져오기입니다.

데이터를 불러오는 방법은 아주 간단한데, 메뉴바에서 데이터 가져오기를 누르면 가지고 올 수 있는 데이터의 리스트가 나오고, 여기서 가장 아래에 있는 자세히를 눌러주면 새로운 창이 나오며 가져올 수 있는 모든 데이터 목록이 나옵니다.

 

파일은 기본이고 데이터 서버도 연결이 가능하며, 파이썬이나 R로 이루어진 코딩도 지원하니 거의 불러오지 못할 데이터가 없다고 해도 과언이 아닐 정도인데요. 얼마 전 보지 못했던 옆에 베타라고 되어있는 새로운 리스트 목록이 보이네요. 이는 새롭게 추가된 목록인 것 같고 아직 100% 완전하지 못하다는 의미인 것 같은데요, 이들도 곧 베타라는 타이틀이 없어지고 또 다른 목록이 계속 추가될 것으로 예상됩니다.

이 중에서 사용자가 가지고 올 데이터 소스를 골라주면 자동으로 연결됩니다.

몇 번의 클릭만으로 데이터를 가지고 올 수 있으니 기존에 사용하던 파이썬 (Python), 알 (R)  보다 아주 쉽게 데이터를 가지고 올 수 있으며, 어려운 프로그래밍 언어를 따로 공부하지 않아도 데이터 분석의 시각화가 가능하게 되었습니다.

 

우선 가장 간단한 엑셀 파일 하나를 가져오는 경우를 말씀드리겠습니다.

 

위쪽의 이미지에서 처럼 데이터 가져오기를 선택하면 가장 위에 Excel 통합문서가 보이는데, 이를 선택하면 파일 탐색기가 나오고 여기서 원하는 파일을 선택하면 자동으로 연결됩니다.

 

그럼 새 창이 열리며 엑셀 파일 안에 있는 모든 시트 (Sheet)를 보여주게 되는데, 여기서 원하는 시트를 선택한 뒤 ‘데이터 변환’ 버튼을 누르면 파워쿼리 에디터로 엑셀 시트 안에 있는 데이터를 가져오게 됩니다. (만일 데이터를 파워쿼리 에디터에 가져오는 걸 원치 않으시면  ‘로드’를 선택하면 됩니다.) 

 

시트의 선택 개수는 제한이 없으며,’데이터 변환’을 선택해 가져오기가 완료되면 아래와 같은 화면으로 바뀌게 됩니다.

오른쪽 쿼리창에 가지고 온 시트의 이름과 개수를 보여주며, 쿼리를 선택하면 작업 창에 데이터를 보여줍니다. (이제 파워쿼리 에디터로 데이터를 불러왔으니 시트라 하지 않고 쿼리라 하겠습니다) 만일 쿼리의 이름이 마음에 들지 않으면 쿼리창에서 이름을 더블클릭하거나 오른쪽 쿼리 설정의 속성에서 이름을 바꾸어주면 됩니다. 쿼리 개수가 많아지면 나중에 혼동이 올 수 있으니 처음부터 알아보기 쉬운 이름으로 바꾸어주시면 좋습니다.

 

이런 식으로 데이터를 가지고 와 파워쿼리 에디터에서 필요한 부분을 바꾸어주면 데이터 전처리를 위한 준비는 끝났다고 보면 되겠네요.

 

다음부터는 가지고 온 데이터를 어떻게 연결하고, 수정하여 파워비아이에 필요한 데이터의 형태로 만들기 위해 파워쿼리 에디터에서 제공하는 여러 버튼과 사용 방법에 대해 자세히 다루어 보도록 하겠습니다.

 

데이터 전처리가 필요한 이유는 아주 간단하고 명확합니다. 엑셀이나 웹상에서 가지고 온 데이터는 바로 파워비아이에 사용할 수가 없기 때문이죠.

 

회사에서 가장 많이 사용되는 것이 엑셀이기 때문에 엑셀을 예로 들겠습니다. 스프레드시트의 대명사로 통하며, 회사에서 서류를 만들 때 없어서는 안 될 소프트웨어가 엑셀이라는 건 다들 공감하실 겁니다. 또한 여러 데이터분석 프로그램에서 엑셀 시트를 불러와 데이터 작업을 할 만큼 널리 사용되는 소프트웨어이기도 하지요.

 

특히 숫자를 다룰 때는 타의 추종을 불허한다고 해도 과언이 아니며 셀 안에 있는 숫자나 문자를 사용자가 원하는 대로 꾸밀 수 있다는 것은 엑셀의 가장 큰 장점입니다. 하지만 이러한 장점이 데이터 분석에 있어서 단점으로 바뀌게 되는데요, 너무나 자유로운 편집이 데이터 분석에 있어서 걸림돌이 된다는 것입니다. 그래서 이러한 ‘자유’를 파워쿼리 에디터에서 ‘구속’으로 바꾸어 줘야 데이터 분석에 이용할 수 있습니다.

 

데이터를 다루는데 엑셀과 파워쿼리 에디터의 차이점은 다음과 같습니다.

  • 엑셀: 사용자가 원하는 대로 데이터를 구성
  • 파워쿼리 에디터: 파워비아이가 원하는 데로 데이터를 구성

즉 엑셀은 사용자가 주체이지만, 파워쿼리 에디터는 데이터 형식을 파워비아이가 원하는 데로 맞추어 줘야 한다는 것입니다.

 

간단한 예를 들겠습니다.

반별 국, 영, 수 점수의 중간, 기말별 평균성적을 나타낸 표입니다. 우리가 늘 접하는 형식이죠. 하지만 불행하게도 이러한 표는 데이터 분석을 위해서 사용이 될 수 없습니다.

 

데이터 분석을 위해서는 전처리를 통해 아래와 같이 변형이 되어야 파워비아이에서 시각화 작업이 가능합니다.

 

데이터 전처리의 가장 기본은 행에 포함되는 열의 구성이 유니크 (Unique)한 구성을 가져야 한다는 것입니다.

여기서 예를 들면 첫 번째 행은 {중간, 국어, 1반, 83} 이고 두 번째는 {중간, 국어, 2반, 82}, 이런 식으로 총 18개의 행을 가진 데이터입니다.

다시 말해서 {학기, 과목, 반, 점수}로 구성된 18개의 행의 데이터가 중복 없이 구성되어야 합니다.

 

아까 말씀드린 엑셀에서 작성한 표를 파워쿼리 에디터로 가지고 와 {학기, 과목, 반, 점수}로 구성된 하나의 데이터로 ‘구속’을 시켜주는 작업이 데이터 전처리 과정입니다.

 

데이터를 ‘구속’시키는 이유는 아주 간단합니다.

지금 예제로 다루는 데이터는 몇 줄 안 되는 데이터지만, 수만 아니 수십만 개의 데이터를 다루려면 아주 강한 규칙이 필요하며, 데이터 분석의 오류를 없애기 위한 일련의 조치입니다.

이는 파워쿼리를 이용해 전처리를 진행하면 자연스럽게 알 수 있는 것이므로 지금은 이 정도로만 설명하겠습니다.

 

하지만 데이터 전처리가 되었다고 시각화를 위한 준비가 끝난 것은 아니고 전처리된 데이터를 다시 여러 수식을 이용해 필요한 값을 추출하는 과정이 필요합니다.  (편의상 후처리라 하겠습니다) 

 

아래의 그림을 마지막으로 이 글을 마무리하겠습니다.

엑셀 데이터도 가공하지 않고 사용할 수 있지만, 이는 극히 드물다고 생각해야 하며, 파워쿼리 에디터를 이용해 데이터 전처리를 하면 원하는 표와 그래프 및 값을 얻을 수 있지만 사실 이것으로도 부족하며, DAX라는 수식을 이용해 데이터 후처리까지 진행해야 거의 원하는 모든 값을 얻을 수 있습니다.

편의상 10%, 60%, 100%라고 했지만, 파워쿼리 에디터에서도 잘 가공을 한다면 거의 90% 가까이 원하는 결과를 얻을 수 있습니다. 하지만 이것도 어느 정도 한계는 있으며, DAX를 이용한 후처리가 필요한 경우가 대부분을 차지하기 때문입니다.

데이터 전처리는 파워비아이로 데이터를 시각화하기 위해 반드시 거쳐야 하는 부분입니다. 보통 데이터 시각화에서 원본 데이터를 어떤 식으로 처리를 할 것인가에 상당히 많은 시간을 할애하게 되는데요, 이는 데이터 전처리가 잘 되었을 때 파워비아이에서 작업을 수월하게 하며 또 데이터를 가지고 DAX 수식을 적용하기가 훨씬 쉽기 때문에 상당히 중요한 부분입니다.

 

회사에 다니시는 분들이라면 대부분이 엑셀에 저장된 데이터를 파워비아이로 가지고 와 데이터 시각화 작업을 하실 거라 생각이 듭니다. 이 엑셀에 저장된 파일을 아무 수정 없이 사용하게 된다면 가장 좋은 시나리오가 되겠지만 현실은 그렇지 않다는 것이 문제죠. 엑셀에 저장된 수많은 파일을 자르고 붙이며 파워비아이에서 사용할 수 있도록 변환이 되어야만 비로소 의미 있는 데이터로 바뀌게 되는 것입니다.

 

데이터 전처리를 위한 방법은 여러 가지가 있지만 가장 많이 사용하는 것은 파이썬 (Python)과 파워쿼리 (Power Query)라 생각합니다.

파이썬은 컴퓨터 언어이지만 다른 언어에 비해 좀 더 쉽게 배울 수 있는 데다, 판다스 (Pandas)나 넘파이 (Numpy) 같이 데이터 처리에 알맞은 강력한 라이브러리를 제공하고 있어 많이 사용되고 있습니다.

여기에 더해 파이썬으로 만든 코딩을 그대로 파워비아이에 사용할 수 있어 연계성이 좋다는 것도 한몫하는 듯합니다.

파워쿼리도 독자적 M Code라는 컴퓨터 언어를 사용하지만, 파워쿼리 에디터라는 도구를 제공해 코딩 기술이 없더라고 여러 명령 툴을 이용해 엑셀과 비슷한 환경 속에서 데이터를 눈으로 하나하나 확인해가며 변환이 가능한 툴입니다. 어려운 데이터 분석을 누구나 쉽게 할 수 있도록 도와주는 변환 툴인 셈이죠.

두 가지의 장점은 다음과 같습니다.

파이썬

  • 데이터의 처리속도가 빠르다.
  • 데이터 불러오기에서 파이썬 코딩을 그대로 이용할 수 있다
  • 파이썬에서 전처리를 거친 뒤 파워비아이로 불러오기 때문에 데이터 정렬이 쉽다

파워쿼리

  • 특별히 코딩을 몰라도 에디터의 명령 툴을 이용해 데이터 처리가 가능하다
  • 다양한 데이터 소스를 제공해 거의 모든 형태의 데이터를 불러올 수 있다
  • 하나하나의 과정이 기록되기 때문에 수정이 용이하며 쉽게 오류를 찾아낼 수 있다.

 

개인적으로 많은 파일을 지속적으로 업로드해야 하는 경우는 파이썬 코딩을 선호하며, 간단히 단발적으로 작업이 진행될 경우는 파워쿼리를 사용하고 있습니다. - 아주 복잡한 코딩을 이야기하는 것이 아니라 데이터 변환을 위한 간단한 코딩입니다.

둘 다 데이터 분석이라는 목적을 위해 사용되기 때문에 비슷한 개념을 가지고 있으며, 하나를 잘 다루게 되면 다른 쉽게 다가갈 수 있습니다.

 

일단 좀 더 쉬운 파워쿼리를 이용한 데이터 전처리를 먼저 다루고 다음에 파이썬을 이용한 방법을 알아보겠습니다.

꼭 데이터 분석가가 아니더라도 간단히 파워쿼리로 데이터 전처리 진행하는 방법을 알아두시면 엑셀보다 몇 배는 강력한 도구가 될 수 있으며, 회사에서 많은 엑셀 파일을 가지고 일할 때 큰 도움이 될 수 있으니 이번 기회에 잘 알아두시면 좋겠습니다.

 

+ Recent posts