[Coursera Google] GCC 데이터 애널리틱스 : 데이터 정리 | 정리 결과 검증 및 보고

2024. 9. 6. 11:35GCC/데이터 애널리틱스

728x90
반응형
반응형

 

 

 

 

 

 

 

 

 

 

데이터 수동 정리

결과 검증 및 보고

 

이 단계는 단순히 데이터가 깔끔하게 정리됐는지를 넘어서, 데이터의 **무결성(Integrity)**을 확인하는 중요한 과정입니다. 데이터가 정리되었지만, 작은 실수나 잘못된 입력이 남아 있을 수 있기 때문입니다. 또한 검증이 완료된 후에는 보고하는 절차도 필요합니다. 검증 과정에서 발견된 내용, 진행 상황, 데이터의 상태 등을 팀원들이나 이해관계자들에게 투명하게 공유하는 것이죠.


1. 데이터 검증이란?

데이터 검증은 정리된 데이터가 정확하고 신뢰할 수 있는지를 확인하는 단계입니다. 분석에 사용할 데이터가 올바른지 확인하는 과정으로, 이 작업이 제대로 이루어지지 않으면 분석의 결과도 신뢰할 수 없게 됩니다.

 

왜 검증이 중요한가요?

데이터 검증은 작은 실수 하나가 큰 문제로 이어질 수 있는 것을 방지하기 위한 단계입니다. 예를 들어, 전화번호를 잘못 입력하거나, 이름에 오타가 생기거나, 날짜 형식이 잘못된 경우 등의 오류가 있을 수 있습니다. 이런 오류를 잡아내지 않고 분석을 진행하면, 분석 결과가 잘못된 방향으로 갈 수 있습니다.

 

검증의 예시

여러분이 대형 가구점에서 데이터 애널리스트로 일하고 있다고 가정해봅시다. 여러분의 역할은 고객들의 구매 데이터를 분석하는 것이고, 이 데이터를 바탕으로 제품 구매 패턴을 파악하고 재고 관리에 필요한 정보를 제공하는 것이죠. 그러나 고객들의 주소가 제대로 입력되지 않았거나, 구매 날짜가 잘못 기재된 경우가 있을 수 있습니다. 이때 검증 과정을 거치지 않고 데이터를 바로 분석하면 잘못된 통계가 나올 수 있습니다.


2. 데이터 검증 방법

데이터를 검증하는 여러 가지 방법이 있습니다. 다음은 데이터 검증을 위해 사용할 수 있는 몇 가지 방법입니다:

 

1) 값의 일관성 확인

  • 데이터를 정리할 때, 같은 필드에 들어가는 데이터는 일관성이 있어야 합니다. 예를 들어, 고객의 주소 필드에 도시 이름 대신 우편번호가 입력되어 있으면 문제가 될 수 있습니다.

2) 누락된 데이터 확인

  • 데이터가 누락된 부분이 있는지 확인해야 합니다. 중요한 정보가 빠지면 데이터 분석 결과에 큰 영향을 줄 수 있기 때문입니다. 예를 들어, 고객의 이메일 주소가 빠져있다면 나중에 고객에게 설문조사를 발송할 때 문제가 생기겠죠.

3) 데이터 형식 확인

  • 데이터 형식도 매우 중요합니다. 날짜 형식이 일관되지 않거나, 숫자가 문자열로 저장되어 있는 경우, 나중에 정렬이나 계산에서 오류가 발생할 수 있습니다. 이럴 때는 SQL의 CAST 함수 등을 사용해 데이터 형식을 통일할 수 있습니다.

4) 비즈니스 요구 사항 검토

  • 검증 과정에서 데이터를 다시 한번 비즈니스 요구 사항과 맞춰보는 것도 중요합니다. 분석의 목표와 데이터가 잘 맞아떨어지는지 확인해야 하죠.

3. 검증 후 데이터 보고

데이터 검증이 끝나면, 이제 그 결과를 팀원이나 이해관계자들에게 보고해야 합니다. 이는 프로젝트 진행 상황을 투명하게 공유하는 중요한 절차입니다.

 

보고의 중요성

  • 소통은 데이터 분석 프로젝트에서 매우 중요합니다. 팀원들과 이해관계자들이 데이터를 어떻게 정리했고, 검증 결과는 어떤지 알 수 있도록 해야 하죠.
  • 보고를 통해 여러분이 책임감 있게 작업을 진행하고 있음을 보여줄 수 있습니다.
  • 문서화는 팀 내 신뢰를 쌓고, 프로젝트를 효과적으로 관리하는 데 큰 도움이 됩니다.

보고의 방법

보고를 하는 방법은 여러 가지가 있습니다. 몇 가지 방법을 소개해드릴게요.

 

1) 데이터 정리 보고서

  • 데이터가 어떻게 정리되었는지, 어떤 검증을 거쳤는지를 설명하는 정리 보고서를 작성할 수 있습니다. 보고서에는 발견된 문제와 해결 방법 등을 기록해 두면 좋습니다.

2) 변경 로그

  • 변경 로그는 프로젝트 진행 과정에서 데이터가 어떻게 변경되었는지 추적할 수 있는 파일입니다. 날짜별로 데이터를 추가, 수정, 제거한 내용을 기록합니다.
  • 이 로그를 통해 팀원들이 변경 사항을 쉽게 파악할 수 있고, 문제가 발생했을 때 어느 시점에서 잘못되었는지 추적할 수 있습니다.

3) 실시간 소통

  • 데이터 분석 프로젝트를 진행하는 동안 팀원들과 실시간으로 소통하는 것도 좋은 방법입니다. 데이터를 정리하는 과정에서 발생하는 이슈나 의문사항을 실시간으로 공유하면 효율적으로 문제를 해결할 수 있습니다.

4. 결론 및 다음 단계

데이터 정리 작업이 끝났다면, 이제 검증보고를 통해 데이터의 무결성을 확인하는 것이 중요합니다. 검증은 데이터의 신뢰성을 보장하고, 보고는 작업의 투명성을 높여 팀원과 이해관계자들의 신뢰를 얻는 데 큰 도움이 됩니다.


추가적인 연습

지금까지 배운 내용을 활용하여, 직접 데이터 검증과 보고서를 작성해보는 것도 큰 도움이 될 것입니다. SQL을 통해 데이터의 오류를 확인하고 수정한 후, 그 과정과 결과를 간단한 보고서 형태로 작성해보세요. 이해관계자팀원에게 설명하는 연습도 해보면 실제 업무에서 유용할 것입니다.

 

 

 


정리와 데이터 기대치

 

데이터 정리 작업에서 검증은 데이터를 신뢰할 수 있는 상태로 만드는 마지막 단계입니다. 검증을 통해 데이터가 올바르게 정리되었는지, 데이터 분석에 사용할 수 있을 만큼 정확한지를 확인하게 됩니다. 이번 글에서는 데이터 검증의 중요성과 검증을 진행하는 방법을 알아보겠습니다.

 

1. 데이터 검증의 중요성

데이터 검증은 분석 과정에서 매우 중요한 단계입니다. 검증을 하지 않으면, 정리된 데이터가 신뢰할 수 있는지 알 수 없고, 그 결과로 내리는 의사결정이 잘못될 수 있습니다. 따라서 검증은 데이터가 분석 및 의사결정에 사용될 준비가 되었는지 확인하는 마지막 절차라고 할 수 있습니다.

 

검증의 핵심 역할:

  • 정확성 확인: 정리된 데이터가 정확하게 정리되었는지 확인합니다.
  • 오류 방지: 데이터 정리 과정에서 발생할 수 있는 실수나 오류를 발견하고 수정합니다.
  • 신뢰성 확보: 데이터를 기반으로 하는 분석이 신뢰할 수 있음을 보장합니다.

 

2. 데이터 검증 절차

  1. 원본 데이터와 정리된 데이터 비교
    데이터 검증의 첫 단계는 원본 데이터정리된 데이터를 비교하는 것입니다. 원본 데이터에서 흔히 발생하는 문제(예: null 값, 오타 등)를 찾고, 정리된 데이터에서 그런 문제가 제거되었는지 확인합니다. 예를 들어, 원본 데이터에 null 값이 많다면, 정리된 데이터에는 null 값이 없어야 합니다.
  2. 오타 및 데이터 오류 찾기
    원본 데이터에 있는 오타나 잘못된 입력값이 정리된 데이터에서도 여전히 존재하는지 확인하는 것이 중요합니다. 데이터에서 오타를 찾는 데는 FIND 기능 같은 도구를 사용할 수 있습니다. 이를 통해 데이터가 정확히 정리되었는지 확인합니다.
  3. 프로젝트의 큰 그림을 보는 검증
    데이터를 검증할 때는 프로젝트의 본래 목적을 잊지 않는 것이 중요합니다. 분석하려는 비즈니스 문제에 집중하고, 그 문제를 해결할 수 있는 데이터인지 확인해야 합니다. 프로젝트가 진행되면서 목적에서 벗어나는 경우가 종종 발생할 수 있으므로, 데이터를 검증할 때는 문제 중심으로 접근하는 것이 필수입니다.
  4. 피드백을 통한 데이터 검토
    데이터를 검증하는 과정에서 새로운 시각을 제공할 수 있는 팀원의 피드백을 받는 것도 중요합니다. 데이터 애널리스트는 데이터를 너무 오래 다루다 보면 무감각해지기 쉽기 때문에, 다른 사람의 시각에서 데이터를 검토하는 것이 유용합니다.

 

3. 검증의 실제 사례

예를 들어, 이커머스 회사에서 고객 설문조사 데이터를 검증한다고 가정해보겠습니다. 1,000명의 고객에게 설문조사를 보냈는데, 응답 데이터가 1,000개를 초과한다면 이는 중복 응답이 발생했거나 데이터 정리 과정에서 복제된 필드가 있을 가능성을 시사합니다. 이런 경우, 검증 과정에서 문제를 발견하고 수정해야 합니다.

 

4. 데이터 검증이 중요한 이유

데이터 검증을 통해 데이터 분석의 신뢰성을 확보할 수 있습니다. 만약 검증 과정에서 문제가 발견되지 않으면, 의사결정에 큰 영향을 미칠 수 있는 잘못된 데이터를 기반으로 한 결과가 도출될 수 있습니다. 따라서 검증은 비즈니스 실수를 피하고, 데이터 애널리스트가 회사에 기여하는 중요한 역할 중 하나입니다.


데이터 검증은 데이터를 분석할 준비가 되었는지 확인하는 마지막 단계이며, 이를 통해 데이터를 기반으로 한 분석 결과의 신뢰성을 확보할 수 있습니다.

 

 


데이터 정리의 최종 단계

 

1. 데이터 검증의 목표

검증의 목표는 정리된 데이터가 신뢰할 수 있는지 확인하는 것입니다. 이는 자동차 회사가 자동차를 출시하기 전에 여러 번 안전 테스트를 거치는 것과 같습니다. 데이터를 검증하지 않으면 분석 결과나 그에 따른 의사결정이 신뢰할 수 없기 때문에 검증은 필수적인 단계입니다.

 

2. 검증의 첫 단계: 원본 데이터와 정리된 데이터 비교

검증의 첫 번째 단계는 정리되지 않은 원본 데이터와 정리된 데이터 세트를 비교하는 것입니다. 이 과정에서 데이터를 수동으로 검토하고 문제를 발견할 수 있습니다. 예를 들어, 필요 없는 공백이나 따옴표 같은 흔한 오류를 발견할 수 있습니다. 이런 오류는 스프레드시트의 TRIM 함수나 중복 삭제 도구를 사용하여 자동으로 수정할 수 있습니다.

  • TRIM: 데이터에서 선행 및 후행 공백을 제거하고, 반복된 공백도 제거합니다.
  • 중복 삭제: 데이터에서 중복되는 항목을 자동으로 제거하는 기능입니다.

 

3. 반복되는 오류 발견: 피벗 테이블 사용

데이터에서 같은 오류가 반복될 수 있습니다. 이런 경우에는 피벗 테이블을 사용하여 오류를 파악할 수 있습니다. 피벗 테이블은 데이터를 요약하고, 정렬하거나 그룹화하는 데 유용합니다. 예를 들어, 파티용품점을 대상으로 하는 프로젝트에서 4개의 공급업체가 있는 상황을 가정해봅시다. 피벗 테이블을 사용해 데이터가 정확하게 정리되었는지 확인할 수 있습니다.

  1. 공급업체 이름의 오류 수정: 피벗 테이블을 통해 공급업체 수를 셀 수 있습니다. 예상되는 결과와 맞지 않으면 오류가 있는 것입니다.
  2. 찾기 및 바꾸기 도구 사용: 피벗 테이블을 사용하기 전, Find and Replace 도구로 공급업체 이름에서 잘못된 단어를 찾아 수정할 수 있습니다.

 

4. SQL로 오류 처리: CASE 문 사용

SQL을 사용할 때는 CASE 문을 활용해 오타를 수정할 수 있습니다. 예를 들어, 고객 이름이 잘못 입력된 경우, CASE 문으로 해당 오류를 수정할 수 있습니다.

 

CASE 문 예시:

sql

SELECT customer_id, 
		CASE 
        	WHEN first_name = 'Tnoy' THEN 'Tony' 
            ELSE first_name 
        END AS cleaned_name 
FROM customer_data.customer_name;
 

이 쿼리는 잘못된 고객 이름을 수정하여 데이터를 정리된 상태로 출력합니다.

 

5. 데이터 검증의 중요성

데이터 검증은 데이터 분석의 신뢰성을 확보하는 데 필수적입니다. 오류가 발생하지 않도록 꼼꼼히 검토하고, 문제가 있으면 바로잡아야 합니다. 검증 과정을 통해 데이터의 정확성신뢰성을 보장할 수 있습니다.

 

 


변경 로그 반영

엔지니어, 작성자, 데이터 애널리스트의 공통점은 무엇일까요? 바로 변경입니다. 

엔지니어는 엔지니어링 변경 지시(ECO)를 사용하여 새 제품 설계 세부정보와 기존 제품에 제안된 변경사항을 추적합니다. 작성자는 문서 업데이트 기록을 사용하여 문서 이동과 편집 변경사항을 추적합니다. 데이터 애널리스트는 변경 로그를 사용하여 데이터 변환 및 정리를 추적합니다.

자동 버전 제어로 대부분의 작업 처리

대다수의 소프트웨어 애플리케이션에는 기록 추적 기능이 기본 제공됩니다. 예를 들어 Google Sheets에서는 전체 시트 또는 개별 셀의 버전 기록을 확인하고 이전 버전으로 되돌릴 수 있습니다. Microsoft Excel에는 Track Changes라는 기능이 있습니다. BigQuery에서는 기록을 보고 변경사항을 확인할 수 있습니다.

 

사용 방법은 다음과 같습니다.

Google Sheets 1. 셀을 마우스 오른쪽 버튼으로 클릭하여 Show edit history를 선택합니다.
2. 기록에서 왼쪽 화살표 < 또는 오른쪽 화살표 >를 클릭하여 원하는 만큼 앞뒤로 이동합니다.
Microsoft Excel 1. 스프레드시트에 Track Changes가 활성화된 경우 Review를 클릭합니다.
2. Track Changes에서 Accept/Reject Changes 옵션을 클릭하여 변경사항을 수락 또는 거부합니다.
BigQuery 이전 버전으로 되돌리지 않고 이전 버전을 불러와서 현재 버전과 비교하며 변경사항을 확인합니다.

 

최종 단계에서 유용한 변경 로그

변경 로그는 작업 기록의 세부정보를 제공하므로 자동 버전 기록을 보강할 수 있습니다. 데이터 애널리스트는 데이터에 관한 모든 변경사항을 변경 로그에 기록합니다. 다르게 설명하면 이렇습니다. 버전 기록은 프로젝트의 데이터가 변경될 때 무엇이 변경되었는지 기록하지만 변경사항의 이유는 기록하지 않습니다. 변경 로그는 변경사항의 이유를 이해하는 데 대단히 유용합니다. 변경 로그에는 정해진 형식이 없으며 심지어 빈 문서에 입력해도 됩니다. 그러나 변경 로그를 공유하는 경우, 모든 로그 항목의 형식에 관해 다른 데이터 애널리스트와 합의하는 것이 좋습니다.

 

일반적으로 변경 로그에 기록하는 정보 유형은 다음과 같습니다.  

  • 변경한 데이터, 파일, 수식, 쿼리, 기타 구성요소
  • 변경사항에 관한 설명
  • 변경 날짜
  • 변경한 사람
  • 변경을 승인한 사람 
  • 버전 번호 
  • 변경 이유

스프레드시트에 있는 특정 수식이 다른 보고서에 있는 수식과 달라 데이터를 일관되게 일치시키기 위해 스프레드시트에서 수식을 변경한다고 가정하겠습니다. 나중에 보고서에 사용된 수식이 잘못되었음을 알게 됐다면 자동 버전 기록을 통해 변경사항을 실행취소하면 됩니다. 변경 로그에 변경 이유도 기록했다면 보고서 작성자에게 수식이 잘못되었다고 알려줄 수 있습니다. 오래전에 변경한 경우 누구에게 알려야 할지 기억이 안 날 수도 있습니다. 이런 상황에서 변경 로그가 큰 도움이 됩니다. 후속 조치를 통해 프로젝트 외부의 데이터 무결성을 보장할 수 있습니다. 또한 자신이 데이터를 믿고 맡길 수 있는 성실한 사람임을 보여줄 수도 있습니다. 이것이 바로 변경 로그의 효과입니다.

 

마지막으로 변경 로그는 스프레드시트 또는 쿼리의 변경사항이 여러 개일 때 중요합니다. 애널리스트가 네 가지 사항을 변경한 후에 두 번째 변경사항을 취소하려고 한다고 가정해보겠습니다. 실행취소 기능을 세 번 클릭하여 두 번째는 물론 세 번째, 네 번째 변경사항을 실행취소하는 대신 두 번째 변경사항만 실행취소할 수 있습니다. 이 예에서는 변경사항이 4개뿐이지만, 수백 개의 변경사항을 추적해야 하는 경우를 생각해보면 변경 로그가 얼마나 중요한지 알 수 있습니다.

 

실제 사례

 

주니어 애널리스트는 앞서 소개한 내용에서 한 가지 예외만 알면 됩니다. 애널리스트가 회사에서 공유되는 기존 SQL 쿼리를 변경하는 경우, 회사는 버전 제어 시스템을 사용하고 있을 가능성이 큽니다. 버전 제어 시스템의 예로, 고위 경영진에게 보여줄 대시보드를 만들기 위해 일일 매출을 반환하는 쿼리가 있습니다. 

 

버전 제어 시스템이 쿼리 변경에 영향을 미치는 방식은 다음과 같습니다.

  1. 회사는 버전 제어 시스템에 중요한 쿼리의 공식 버전을 저장합니다.
  2. 애널리스트는 변경할 쿼리가 최신 버전임을 확인합니다. 이를 동기화라고 합니다. 
  3. 애널리스트가 쿼리를 변경합니다.
  4. 애널리스트가 다른 사람에게 변경사항을 검토해달라고 요청할 수도 있습니다. 이를 코드 검토라고 하며 비공식적으로 또는 공식적으로 이루어집니다. 비공식 검토의 예로, 시니어 애널리스트에게 변경사항을 살펴봐달라고 요청할 수 있습니다.
  5. 검토자가 변경사항을 승인하면 애널리스트는 쿼리의 업데이트된 버전을 회사의 버전 제어 시스템에 있는 저장소로 제출합니다. 이를 코드 커밋이라고 합니다. 코멘트 영역에 변경사항과 변경 이유를 정확하게 설명하는 것이 가장 좋습니다. 일일 매출을 가져오는 쿼리 예의 경우 코멘트를 작성한다면 신제품 Calypso의 매출을 포함하기 위해 매출을 업데이트함이라고 적으면 됩니다.
  6. 변경사항이 제출되면 회사 직원 누구나 버전 제어 시스템에 저장된 최신 쿼리와 동기화하여 새 쿼리에 액세스하고 쿼리를 사용할 수 있습니다.
  7. 쿼리에 문제가 있거나 비즈니스의 요구사항이 변경되면 애널리스트는 버전 제어 시스템을 사용하여 쿼리의 변경사항을 실행취소하면 됩니다. 쿼리의 모든 변경사항과 변경한 사람의 목록을 시간순으로 확인하고 본인이 변경한 항목을 찾아 이전 버전으로 되돌릴 수 있습니다.
  8. 그러면 애널리스트가 변경하기 전 상태로 쿼리가 되돌아갑니다. 회사 직원 모두에게 되돌린 원본 쿼리가 표시됩니다.

 

 


결과 및 정리 과정 문서화

정리 변경사항 기록

데이터 변경사항 문서화의 중요성

문서화는 데이터 정리 활동에서 발생한 변경, 추가, 삭제, 오류 등을 기록하는 과정입니다. 이를 통해 세 가지 주요 이점을 얻을 수 있습니다:

  1. 오류 복구: 데이터 정리 과정에서 발생한 오류를 쉽게 추적하고 복구할 수 있습니다. 예를 들어, 석 달 전에 어떤 데이터를 정리했는지 기억하기 어려울 때, 문서화된 요약본이 있다면 관련 내용을 쉽게 확인할 수 있습니다. 또한, 클린 테이블을 생성하면 원본 데이터가 보존되어 있어 필요할 때 되돌리기 용이합니다.
  2. 정보 공유: 문서화된 기록은 팀원이나 후임자에게 변경된 사항을 알리는 데 유용합니다. 예를 들어, 휴가를 떠나거나 승진할 때, 문서화된 기록이 있으면 다른 애널리스트가 인계받는 데 도움이 됩니다.
  3. 데이터 품질 평가: 문서화된 변경 사항을 통해 데이터의 품질을 평가할 수 있습니다. 데이터 엔지니어가 기록을 참고하여 오류를 해결하거나 다른 데이터 세트를 찾는 데 도움을 줄 수 있습니다.

변경 로그 활용하기

변경 로그는 프로젝트의 변경 사항을 시간순으로 나열한 목록 파일입니다. 이 로그를 사용하여 데이터의 변천사를 기록하고 추적할 수 있습니다. 변경 로그를 활용하는 방법은 다음과 같습니다:

 

스프레드시트에서 변경 로그 사용하기

스프레드시트에서 변경 로그를 사용하면 다음과 같은 방법으로 변경 사항을 추적할 수 있습니다:

  1. 버전 기록 확인: 스프레드시트의 'File' 탭에서 'Version History'를 선택하면 이전 버전을 볼 수 있습니다. 오른쪽 패널에서 특정 날짜와 시간의 버전을 선택하면 변경사항을 확인할 수 있으며, 편집한 사람의 이름과 변경된 내용도 볼 수 있습니다.
  2. 셀 변경 기록: 특정 셀의 변경 사항을 확인하려면, 셀을 마우스 오른쪽 버튼으로 클릭하고 'Show Edit History'를 선택합니다. 이를 통해 셀의 이전 버전과 변경 내용을 알 수 있습니다.
  3. 권한 관리: 다른 사람도 버전 기록을 볼 수 있도록 하려면 권한을 설정해야 합니다. 이는 팀원들이 실시간으로 변경 사항을 확인할 수 있게 해줍니다.

SQL에서 변경 로그 만들기

SQL에서는 쿼리 기록과 코멘트를 활용하여 변경 로그를 관리할 수 있습니다:

  1. 쿼리 기록: SQL에서 실행한 모든 쿼리는 시간순으로 나열된 쿼리 기록 탭에 저장됩니다. 쿼리 기록을 통해 이전 쿼리 버전으로 되돌리거나 변경 사항을 볼 수 있습니다.
  2. 쿼리 코멘트: 쿼리 작성 시 코멘트를 남기면, 나중에 변경 로그를 구성하는 데 도움이 됩니다. 코멘트는 쿼리의 의도를 설명하거나 변경된 사항을 기록하는 데 유용합니다.

 

변경 사항을 추적하고 문서화하는 과정은 데이터 프로젝트의 품질을 유지하고 팀원들과의 원활한 소통을 보장하는 데 필수적입니다. 

데이터 정리 후에는 변경사항을 추적하는 것이 매우 중요합니다. 데이터를 정리하면서 변경된 모든 사항을 기록하고 관리하는 것은 데이터를 정확하게 유지하고, 팀 내에서의 소통을 원활하게 해주며, 필요할 때 데이터를 복구할 수 있게 해줍니다. 

 

1. 변경사항 추적의 중요성

데이터의 변경사항을 추적하는 것은 세 가지 이유로 중요합니다:

  1. 오류 복구: 정리된 데이터를 되돌릴 수 있어 데이터 오류를 복구할 수 있습니다. 과거의 수정 내역을 알 수 있어, 비슷한 오류가 발생하더라도 간단히 해결할 수 있습니다.
  2. 다른 사용자와의 소통: 데이터를 정리한 후, 다른 사람이 변경사항을 쉽게 이해할 수 있게 되어 업무 인계나 팀 내 협업이 수월해집니다.
  3. 데이터 품질 보장: 데이터 변경 내역을 통해 분석에 사용된 데이터의 품질을 평가할 수 있습니다. 만약 데이터 오류가 많다면, 이를 해결하는 데 시간이 오래 걸릴 경우 다른 데이터를 사용할 수도 있습니다.

2. 변경 로그(Documenting Changes)

변경 로그는 프로젝트의 모든 변경사항을 시간순으로 기록한 파일입니다. 이는 스프레드시트나 SQL에서도 사용할 수 있으며, 팀 내에서 데이터를 원활하게 공유하고 관리하는 데 도움이 됩니다.

  • 스프레드시트에서의 변경 로그:
    스프레드시트에서는 'Version History' 기능을 사용해 각 셀의 변경사항을 추적할 수 있습니다. 특정 사용자가 언제 어떤 셀을 변경했는지 알 수 있으며, 이전 버전으로 되돌리는 것도 가능합니다.
    • 'File' 탭 → 'Version History' → 'Show Edit History'로 접근 가능하며, 이전 버전으로 복구할 수 있습니다.
  • SQL에서의 변경 로그:
    SQL에서는 프로그램마다 다르게 변경 로그를 관리할 수 있습니다. 일부 회사는 자체 시스템을 통해 쿼리와 변경 로그를 추적합니다. 또한, SQL 쿼리 내에 코멘트를 남기거나 쿼리 기록을 조회하여 변경사항을 확인할 수 있습니다.
    쿼리 기록을 통해 실행한 쿼리의 변경 내역을 볼 수 있고, 이를 바탕으로 과거 쿼리로 복구하거나 개선 사항을 추적할 수 있습니다.

3. 문서화의 이점

변경사항을 문서화하면 다음과 같은 이점이 있습니다:

  • 오류 발생 시 빠른 복구: 데이터가 잘못 수정되거나 삭제된 경우, 문서화를 통해 빠르게 복구할 수 있습니다.
  • 업무 인계의 용이성: 변경 로그를 통해 다른 사람이 작업을 인계받을 때도 쉽게 내용을 파악할 수 있습니다.
  • 데이터 품질 관리: 데이터의 변경사항을 기록함으로써 데이터를 분석에 사용할지 말지 결정할 때 중요한 참고 자료가 됩니다.

 


문서화가 중요한 이유

 

1. 문서화와 보고의 중요성

데이터 정리 과정이 끝나면, 문서화와 보고가 필요합니다. 이는 다음과 같은 이유로 중요합니다:

  1. 투명성 확보: 데이터 정리 작업의 모든 단계와 결과를 문서화하면, 팀원과 이해관계자가 작업 내용을 쉽게 이해할 수 있습니다. 이는 데이터 정리 과정의 투명성을 확보하고 신뢰를 쌓는 데 도움이 됩니다.
  2. 효율적인 소통: 문서화된 변경 로그와 보고서는 팀원이나 이해관계자에게 데이터 정리의 과정을 명확히 전달할 수 있게 해줍니다. 이렇게 하면 데이터 정리 작업에 대한 이해가 높아지고, 후속 작업이 원활하게 진행될 수 있습니다.
  3. 증거 제공: 데이터 정리 작업을 문서화하면, 데이터 애널리스트는 프로젝트의 진척 상황을 명확하게 설명할 수 있습니다. 이는 특히 프로젝트의 결과를 보고할 때 중요한 역할을 합니다.

2. 문서화 방법

문서화는 변경 사항을 명확하게 기록하는 과정입니다. 이 과정은 다음과 같이 진행됩니다:

  1. 변경 사항 기록: 작업 단계와 결과를 상세히 나열하여 문서화합니다. 예를 들어:
    • 변경 작업: 중복 인스턴스를 삭제했습니다.
    • 변경 결과: 행 수가 33개에서 32개로 줄었으며, 멤버십 총액이 500달러 줄었습니다.
  2. SQL에서의 코멘트: SQL 작업 시, 쿼리 내에 코멘트를 추가하여 변경한 이유를 설명할 수 있습니다. 이는 문서화의 고급 기법으로, 후속 작업에서 참고할 수 있습니다.

3. 보고서 작성

보고서는 데이터를 명확하고 이해하기 쉽게 전달하는 중요한 도구입니다. 보고서를 작성할 때는 다음과 같은 사항을 포함해야 합니다:

  1. 작업 요약: 데이터 정리 작업의 목표와 결과를 간결하게 요약합니다.
  2. 변경 내역: 모든 변경 사항을 시간순으로 기록하여, 작업의 진행 상황을 명확히 합니다.
  3. 결과 분석: 데이터 정리 작업의 결과를 분석하고, 주요 발견 사항을 강조합니다.
  4. 향후 계획: 이후 데이터 관리나 추가 작업에 대한 계획을 제시합니다.

4. 실습 예시

이전 예시를 통해 데이터 정리 작업을 문서화하는 방법을 살펴보겠습니다:

  • 중복 인스턴스 삭제:
    • 작업: 중복 멤버십 인스턴스 삭제
    • 결과: 행 수 33개 → 32개로 감소, 총액 500달러 감소

이러한 문서화는 데이터 애널리스트가 자신의 작업을 100% 투명하게 공개하고, 프로젝트 이해관계자에게 신뢰를 구축하는 데 도움이 됩니다.

 

데이터 정리 후, 문서화와 보고는 성공적인 데이터 프로젝트의 기반을 마련합니다. 이를 통해 데이터 작업의 투명성을 확보하고, 팀원과 이해관계자와의 소통을 원활하게 하며, 데이터 정리 작업의 결과를 효과적으로 전달할 수 있습니다. 더티 데이터를 처리하는 과정도 이처럼 체계적으로 접근하면 해결할 수 있습니다.

 

 


피드백 및 정리

 

피드백 반영의 중요성

  1. 문제 파악 및 해결:
    • 데이터 정리 과정에서 발생하는 오류는 인적 오류, 절차적 결함, 시스템 문제 등 다양한 원인으로 발생할 수 있습니다. 피드백을 통해 이러한 오류를 파악하고, 문제의 본질과 심각도를 이해할 수 있습니다.
    • 예를 들어, 설문조사 양식의 질문이 명확하지 않아 데이터 입력 오류가 발생했을 경우, 피드백을 반영하여 질문을 수정할 수 있습니다.
  2. 절차 개선:
    • 피드백을 통해 데이터 수집 및 입력 절차의 오류 패턴을 파악할 수 있습니다. 이를 통해 반복적인 오류를 피하고, 데이터 수집 방식을 개선할 수 있습니다.
    • 데이터 수집 방식을 다시 프로그래밍하거나 양식을 수정하여, 향후 데이터 정리가 더 원활하게 이루어질 수 있습니다.
  3. 품질 관리 업데이트:
    • 때로는 피드백에 따라 계획 단계로 돌아가서 기대치를 재설정하고, 품질 관리 절차를 업데이트해야 할 수도 있습니다.
    • 데이터 엔지니어나 데이터 소유자와의 약속을 통해 데이터 수집 과정이 제대로 이루어지고 있는지 확인하고, 지속적인 데이터 정리가 필요한지 평가할 수 있습니다.

피드백 반영 방법

  1. 피드백 수집:
    • 데이터 정리 결과를 이해관계자에게 보고한 후, 그들의 피드백을 적극적으로 수집합니다. 이 피드백은 데이터의 신뢰성과 정확성을 높이는 데 중요한 정보를 제공합니다.
  2. 문서화:
    • 수집한 피드백을 문서화하여, 어떤 문제가 있었고 어떻게 해결했는지를 기록합니다. 이는 향후 비슷한 문제를 예방하는 데 도움이 됩니다.
  3. 절차 업데이트:
    • 피드백을 바탕으로 데이터 수집 및 입력 절차를 업데이트합니다. 필요에 따라 설문조사 양식 수정, 데이터 수집 프로세스 변경 등을 고려할 수 있습니다.
  4. 품질 관리:
    • 데이터 정리와 관련된 품질 관리 절차를 정기적으로 검토하고, 필요에 따라 업데이트합니다. 이를 통해 데이터 수집과 정리 과정의 품질을 지속적으로 개선할 수 있습니다.

 

피드백을 반영하는 과정은 데이터 정리 작업의 최종 단계로, 데이터의 신뢰성과 품질을 높이는 데 매우 중요합니다. 이를 통해 데이터 오류를 줄이고, 효율성을 높이며, 회사의 실적을 개선할 수 있습니다. 데이터 정리 작업을 성공적으로 검증하고 지속적으로 발전시키기 위해, 피드백 반영 과정을 체계적으로 진행하는 것이 필요합니다.

 

 


빠른 데이터 정리를 위한 고급 함수

이 읽기 자료에서는 스프레드시트의 데이터 정리 과정을 빠르게 처리하는 데 도움이 되는 고급 함수를 몇 가지 배웁니다. 다음 표에는 세 개의 함수와 그 기능이 요약되어 있습니다.

IMPORTRANGE: Syntax: =IMPORTRANGE(spreadsheet_url, range_string) Menu Options: Paste Link (copy the data first) Primary Use: Imports (pastes) data from one sheet to another and keeps it automatically updated QUERY: Syntax: =QUERY(Sheet and Range, "Select *") Menu Options: Data > From Other Sources > From Microsoft Query Primary Use: Enables pseudo SQL (SQL-like) statements or a wizard to import the data. FILTER: Syntax: =FILTER(range, condition1, [condition2, ...]) Menu Options: Filter(conditions per column) Primary Use: Displays only the data that meets the specified conditions.
 
 

데이터를 정리되어 소스와 동기화한 상태로 유지

Google Sheets의 IMPORTRANGE 함수와 Paste Link 기능(Microsoft Excel의 Paste Special 옵션)을 사용하면 한 시트의 데이터를 다른 시트로 삽입할 수 있습니다. 대규모 데이터에서 이 함수와 기능을 사용하면 수동으로 복사하여 붙여넣을 때보다 훨씬 효율적입니다. 또한 잘못된 데이터를 복사하여 붙여넣어 발생하는 오류를 줄입니다. 분석할 데이터만 선별하고 프로젝트와 관련 없는 데이터는 그대로 둘 수 있으므로 데이터 정리에도 유용합니다. 기본적으로 문제 해결에 가장 중요한 데이터에만 집중할 수 있도록 데이터의 노이즈를 제거하는 작업과 유사합니다. 이 기능을 활용하면 관련 데이터를 다른 사람과 공유하는 추적 스프레드시트를 만들 수 있으므로, 일상적인 데이터 모니터링에도 유용합니다. 데이터는 데이터 소스와 동기화되므로 데이터가 소스 파일에서 업데이트되면 추적되는 데이터도 업데이트됩니다. 

 

Google Sheets에서 IMPORTRANGE를 사용하는 경우, 다른 스프레드시트의 데이터를 가져올 수 있지만 데이터를 처음 가져올 때 스프레드시트에 액세스하도록 허용해야 합니다. 아래에 표시된 URL은 구문 설명을 위한 예시 목적으로만 사용됩니다. 본인의 스프레드시트에 입력하지 마시기 바랍니다. 생성한 스프레드시트 URL을 예시 URL 자리에 입력하면 Allow access 버튼을 클릭하여 액세스를 제어할 수 있습니다.

 

샘플 사용 및 구문은 Google 지원 페이지의 IMPORTRANGE 항목을 참고하세요.

 

IMPORTRANGE 사용 예

애널리스트가 모금 행사를 모니터링하는데, 매칭 펀드가 분배되고 있는지 추적하고 확인해야 합니다. 애널리스트는 IMPORTRANGE를 사용하여 매칭 펀드의 모든 거래 내역을 개별 기부 내역이 모두 포함된 스프레드시트로 가져옵니다. 이렇게 하면 매칭 펀드 대상인 기부 내역 중에서 미처리된 항목을 찾아낼 수 있습니다. 매칭 펀드의 거래 총횟수는 매일 증가하므로 함수에서 사용하는 범위를 변경하여 최신 데이터를 가져와야 합니다. 

 

화요일에는 기부자 이름과 매칭 펀드 액수를 가져오기 위해 다음 함수를 사용합니다.

=IMPORTRANGE(“https://docs.google.com/spreadsheets/d/1cOsHnBDzm9tBb8Hk_aLYfq3-o5FZ6DguPYRJ57992_Y”, “Matched Funds!A1:B4001”)

 

수요일에는 500개의 거래 내역이 추가로 처리됐습니다. 데이터를 기부자별 스프레드시트로 가져올 때 함수의 범위를 500만큼 늘려서 최신 거래 내역을 간단히 포함합니다.

=IMPORTRANGE(“https://docs.google.com/spreadsheets/d/1cOsHnBDzm9tBb8Hk_aLYfq3-o5FZ6DguPYRJ57992_Y”, “Matched Funds!A1:B4501”)

 

참고: 위 예시는 설명 목적으로만 사용됩니다. 본인의 스프레드시트로 복사하여 붙여넣지 마시기 바랍니다. 직접 해보려면 다른 URL로 대체하고(여러 탭을 사용 중인 경우 스프레드시트 이름도 변경) 데이터를 입력한 스프레드시트의 셀 범위를 사용해야 합니다. 

 

다른 데이터 소스의 데이터 가져오기

다른 스프레드시트의 데이터를 가져오려는 경우 QUERY 함수도 유용합니다. QUERY 함수는 SQL 같이 스프레드시트 내 특정 데이터를 추출할 수 있습니다. 대량의 데이터에서 QUERY 함수를 사용하면 데이터를 수동으로 필터링할 때보다 빠릅니다. 반복적인 필터링이 필요할 때 특히 그렇습니다. 예를 들어 특정 달에 회사 제품을 구매한 모든 고객의 목록을 보기 위해서는 수동으로 필터링을 생성해도 괜찮습니다. 하지만 지난달 대비 고객 증가율을 알아내려면 필터링된 데이터를 새 스프레드시트로 붙여넣고, 다음 달 매출 데이터를 필터링하고, 그 결과를 복사해서 분석해야 합니다. QUERY 함수를 사용하면 원본 데이터 세트를 변경하거나 결과를 복사할 필요 없이 두 달의 데이터를 모두 얻을 수 있습니다.

 

QUERY 함수 구문은 IMPORTRANGE와 유사합니다. 시트의 이름과 쿼리할 데이터 범위를 입력한 다음 SQL SELECT 명령어를 사용하여 특정 열을 선택합니다. SELECT 문 뒤에 WHERE 문을 넣어서 특정 기준을 추가할 수도 있습니다. 사용하는 모든 SQL 코드는 따옴표 안에 있어야 한다는 사실을 잊지 마세요.

 

Google Sheets는 Google Visualization API 쿼리 언어를 실행하여 데이터를 반환하고, Excel 스프레드시트는 쿼리 마법사를 사용하여 데이터 소스와 연결하고 테이블을 선택하는 단계를 안내합니다. 어느 쪽이든 가져온 데이터가 쿼리 기준을 기반으로 정리되고 검증되었음을 확신할 수 있습니다.

 

QUERY 사용 예

샘플 사용, 구문, Google 시트로 다운로드 가능한 예시는 Google 지원 페이지의 QUERY 함수 항목을 참고하세요.

시트 사본 링크: QUERY 예

 

실제로 유용한 해결책

애널리스트는 SQL을 사용하여 특정 데이터 세트를 스프레드시트로 가져옵니다. 그런 다음 QUERY 함수를 사용하여 데이터 세트의 탭을 여러 개 생성합니다. 예를 들어 한 탭에는 특정 달의 모든 판매 데이터를, 다른 탭에는 특정 지역의 모든 판매 데이터를 정리합니다. 이 해결책은 SQL과 스프레드시트가 원활하게 호환된다는 사실을 보여줍니다.

 

원하는 결과를 얻기 위한 데이터 필터링

FILTER 함수는 스프레드시트에 기본 제공되는 내부 기능으로 쿼리 언어가 필요하지 않습니다. FILTER 함수를 사용하면 소스 데이터 중 지정한 조건을 충족하는 행(또는 열)만 표시할 수 있습니다. 분석하기 전에 데이터를 미리 필터링할 수도 있습니다.

FILTER 함수는 QUERY 함수보다 빠르게 실행됩니다. 그러나 QUERY 함수는 다른 함수와 결합되어 보다 복잡한 계산을 처리할 수 있습니다. 예를 들어 QUERY 함수는 SUM, COUNT 등 다른 함수와 함께 사용되어 데이터를 요약할 수 있지만 FILTER 함수는 그럴 수 없습니다. 

 

FILTER 사용 예

샘플 사용, 구문, Google 시트로 다운로드 가능한 예시는 Google 지원 페이지의 FILTER 함수 항목을 참고하세요.

시트 사본 링크: FILTER 예

 

 

 

728x90

 

728x90
반응형