2024. 8. 19. 21:17ㆍGCC/데이터 애널리틱스
데이터 탐색
데이터 수집
세상 속 데이터 수집
데이터의 생성 방식
- 온라인 활동: 매일 수백만 건의 문자 메시지, 이메일, 온라인 검색, 동영상 조회 등이 생성되며, 이 모든 것이 데이터입니다.
- 디지털 사진: 온라인에 올라오는 모든 디지털 사진에는 픽셀 수, 색상 정보 등 다양한 데이터가 포함되어 있습니다.
- 정보 수집: 정보를 수집할 때도 데이터가 생성됩니다. 이는 설문조사나 양식을 통해 이루어질 수 있습니다.
데이터의 수집 방식
- 설문조사와 양식: 예를 들어, 미국 인구 조사국은 국가 인구에 관한 데이터를 수집하여 다양한 공공 서비스에 자금을 지원하는 데 활용합니다. 이 데이터는 여러 비즈니스와 산업에서 사용될 수 있습니다.
- 면접: 채용 면접에서는 양쪽 모두가 데이터를 수집합니다. 지원자는 회사에 관한 정보를 수집하고, 채용 담당자는 지원자에 대한 데이터를 수집하여 채용 여부를 결정합니다.
- 과학 연구: 과학자들은 연구 중에 데이터를 수집하며, 관찰을 통해 동물 행동이나 미생물 관찰 등의 데이터를 생성합니다.
- 쿠키: 온라인에서 광고가 정확하게 추천되고 웹사이트가 사용자의 선호를 기억할 수 있는 이유는 쿠키 덕분입니다. 쿠키는 사용자의 온라인 활동을 기반으로 정보를 저장하며, 이를 통해 개인화된 경험을 제공합니다.
데이터의 윤리적 수집
- 데이터 수집 과정에서 개인정보와 권리를 보호하는 것이 매우 중요합니다. 데이터가 윤리적으로 수집되고 사용될 수 있도록 하는 것은 데이터 애널리스트의 중요한 역할입니다.
데이터의 맥락과 분석
- 데이터를 생성하고 수집하는 방식을 이해하면, 분석 과정에서 데이터를 맥락화하고 보다 효과적인 분석을 수행할 수 있습니다.
이제 데이터를 수집하는 다양한 방법과 생성 과정을 이해하셨을 것입니다. 이러한 개념은 데이터를 분석할 때 데이터의 출처와 맥락을 이해하는 데 중요한 역할을 합니다.
수집 대상 데이터 결정
데이터 수집 시 고려해야 할 요소
- 데이터 소스의 유형
- 퍼스트 파티 데이터: 개인이나 그룹이 직접 수집한 데이터로, 출처가 명확하고 신뢰할 수 있는 데이터입니다. 예를 들어, 교통량 관측 데이터는 퍼스트 파티 데이터에 해당합니다.
- 세컨드 파티 데이터: 다른 조직이 고객에게서 직접 수집해 판매하는 데이터입니다. 직접 수집하기 어려운 데이터를 다른 전문가 집단에서 구매할 수 있습니다.
- 서드 파티 데이터: 다양한 소스에서 수집된 데이터로, 출처가 명확하지 않을 수 있습니다. 이 경우, 정확성과 신뢰성을 확인하는 것이 중요합니다.
- 데이터의 정확성과 신뢰성
- 데이터를 분석하기 전에 선택한 데이터가 문제를 해결하는 데 적합한지, 정확하고 신뢰할 수 있는지 검토해야 합니다. 이를 통해 잘못된 결론에 도달할 가능성을 줄일 수 있습니다.
- 데이터의 적합성
- 선택한 데이터가 문제 해결에 직접적인 도움을 줄 수 있어야 합니다. 예를 들어, 교통량 문제를 분석할 때 금융 데이터는 도움이 되지 않지만, 교통량이 많은 시간대에 대한 데이터는 매우 유용합니다.
- 데이터의 모집단과 샘플링
- 모집단: 특정 데이터 세트의 가능한 모든 데이터 값을 의미합니다. 예를 들어, 도시의 모든 차량이 모집단이 될 수 있습니다.
- 샘플: 전체 모집단에서 선택된 일부 데이터를 의미합니다. 샘플은 모집단을 대표해야 하며, 이를 통해 전체 데이터를 분석하는 것과 유사한 결과를 얻을 수 있습니다.
- 데이터의 유형
- 문제 해결에 필요한 데이터 유형을 선택해야 합니다. 예를 들어, 교통량 분석에서는 날짜 형식으로 저장된 교통량 데이터가 유용할 수 있습니다.
- 데이터 수집 기간
- 분석 목적에 따라 데이터 수집 기간을 정해야 합니다. 과거 데이터를 사용할지, 장기간 데이터를 수집할지에 따라 분석 결과가 달라질 수 있습니다.
데이터 수집은 데이터 애널리스트의 중요한 역할 중 하나입니다. 올바른 데이터를 수집하고 분석하기 위해서는 데이터 소스의 신뢰성, 적합성, 데이터의 유형, 그리고 샘플링 방법 등을 신중하게 고려해야 합니다. 이러한 요소를 잘 이해하고 적용하면, 프로젝트의 목표에 맞는 데이터를 효과적으로 수집할 수 있습니다.
알맞은 데이터 선택
데이터 분석 시 유의해야 할 데이터 수집 고려사항은 다음과 같습니다.
데이터 수집 방식
자체 리소스를 사용하여 데이터를 수집할지, 다른 당사자의 데이터를 받거나 구매할지 결정합니다. 직접 수집하는 데이터는 퍼스트 파티 데이터라고 합니다.
데이터 소스
자체 리소스를 사용하여 데이터를 수집하지 않는 경우 세컨드 파티나 서드 파티 데이터 제공자의 데이터를 이용하게 됩니다. 세컨드 파티 데이터는 다른 그룹이 직접 수집하여 판매하는 데이터입니다. 서드 파티 데이터는 제공자가 데이터를 직접 수집하지 않고 판매하는 데이터입니다. 서드 파티 데이터는 소스가 여러 곳일 수 있습니다.
비즈니스 문제 해결
데이터 세트에는 흥미로운 정보가 다수 제시됩니다. 하지만 문제 해결에 실제로 도움이 되는 데이터를 선택해야 합니다. 예를 들어 시간 경과에 따른 추세를 분석하는 경우 시계열 데이터, 즉 날짜를 포함하는 데이터를 사용해야 합니다.
수집할 데이터의 양
자체 데이터를 수집하는 경우 샘플 크기를 알맞게 정해야 합니다. 일부 프로젝트는 기존 데이터에서 무작위로 샘플을 수집해도 괜찮지만 특정 기준에 주목하는 전략적인 데이터 수집이 필요한 프로젝트도 있습니다. 프로젝트마다 요구사항이 다릅니다.
기간
자체 데이터를 수집한다면 데이터 수집에 필요한 기간을 결정합니다. 특히 이는 장기간에 걸친 추세를 추적하는 경우에 중요합니다. 즉시 답이 필요한 상황에서는 새로운 데이터를 수집할 시간이 없을 수도 있습니다. 이때는 이미 존재하는 과거 데이터를 사용해야 합니다.
프로젝트 기한이 데이터 수집에 상당한 영향을 미치는 경우 아래의 플로우 차트를 참고하세요.
데이터 형식과 구조의 차이
데이터 형식 살펴보기
데이터의 종류와 형식
- 정량적 데이터와 정성적 데이터
- 정성적 데이터: 이름, 카테고리, 설명 등 숫자로 표현할 수 없는 데이터입니다. 예를 들어, 영화의 제목이나 출연진 정보가 여기에 해당합니다.
- 정량적 데이터: 측정하거나 계산할 수 있고 숫자로 표현되는 데이터입니다. 예를 들어, 영화의 예산이나 박스 오피스 수익이 정량적 데이터입니다.
- 정량적 데이터의 세부 구분
- 이산형 데이터: 특정 값만 가질 수 있는 데이터로, 예산이나 박스 오피스 수익이 이에 해당합니다. 예를 들어, 수익은 소수점 둘째 자리까지만 표현됩니다.
- 연속형 데이터: 소수점 여러 자리까지 표현할 수 있는 데이터입니다. 예를 들어, 영화의 상영 시간이 이에 해당합니다.
- 명목형 데이터와 순서형 데이터
- 명목형 데이터: 순서가 없는 정성적 데이터로, '그렇다', '아니다' 같은 응답이 여기에 속합니다.
- 순서형 데이터: 순서나 크기가 있는 정성적 데이터로, 영화에 대해 1~5점으로 평가하는 경우가 이에 해당합니다.
- 내부 데이터와 외부 데이터
- 내부 데이터: 조직 내부에서 자체적으로 수집된 데이터로, 신뢰성이 높고 수집이 쉬운 편입니다.
- 외부 데이터: 조직 외부에서 수집된 데이터로, 여러 소스에서 정보를 얻어야 할 때 유용합니다.
- 구조화된 데이터와 비구조화된 데이터
- 구조화된 데이터: 특정 형식으로 구성된 데이터로, 스프레드시트나 관계형 데이터베이스가 이에 해당합니다. 구조화된 데이터는 분석과 검색이 용이합니다.
- 비구조화된 데이터: 명확한 형식 없이 구성된 데이터로, 오디오나 동영상 파일이 여기에 속합니다. 이러한 데이터는 행과 열로 정리하기 어렵지만 내부 구조는 있을 수 있습니다.
이번 시간에서는 다양한 데이터 유형과 형식을 이해함으로써 데이터를 어떻게 분류하고 사용할 수 있는지를 배웠습니다. 이 과정은 데이터 애널리스트로서 기본적으로 갖춰야 할 능력이며, 데이터 분석 작업의 기초가 됩니다.
데이터 형식 실제 사례
'형식'이라는 단어를 생각해보면 여러 가지가 떠오를 것입니다. 좋아하는 매장의 광고를 생각해보세요. 광고 형태는 인쇄 광고, 판넬 광고, 심지어 TV 광고일 수 있습니다. 광고 속 정보는 사람들이 받아들이기에 가장 적합한 형식으로 제시됩니다. 데이터 세트의 형식도 마찬가지입니다. 알맞은 형식을 선택하면 데이터를 가장 적합한 방식으로 관리하고 사용하는 데 도움이 됩니다.
데이터 형식 예
대개 정의는 실제 사례와 연결하면 쉽게 이해할 수 있습니다. 먼저 각 정의를 검토한 다음 예를 참고하여 각 데이터 형식을 제대로 이해해보세요.
데이터 형식 분류 | 정의 | 예 |
1차 데이터 | 연구자가 원본 소스에서 수집함 | - 인터뷰를 실시하여 얻은 데이터 - 20명이 참여한 설문조사에서 얻은 데이터 - 직원 그룹이 제공한 설문지에서 얻은 데이터 |
2차 데이터 | 다른 사람이 수집하거나 다른 연구를 통해 수집함 | - 현지 데이터 애널리틱스 업체의 고객 프로필에서 구매한 데이터 - 대학에서 수집한 인구통계 데이터 - 연방 정부가 수집한 인구조사 데이터 |
데이터 형식 분류 | 정의 | 예 |
내부 데이터 | 회사의 자체 시스템에 존재하는 데이터 | - HR에서 추적한 사업부별 직원 임금 - 매장 위치별 판매 데이터 - 물류 센터별 제품 재고 수준 |
외부 데이터 | 회사 또는 조직 밖에 존재하는 데이터 | - 조직 내 다양한 직책의 전국 평균 임금 - 자동차 판매점의 고객 신용 보고서 |
데이터 형식 분류 | 정의 | 예 |
연속형 데이터 | 측정할 수 있는 데이터로 거의 모든 수치를 값으로 취할 수 있음 | - 3학년 학생 키(133센티미터, 166센티미터)
- 동영상의 런타임 마커 - 온도 |
이산형 데이터 | 셀 수 있는 데이터로 값으로 취할 수 있는 수치가 제한됨 | - 매일 병원 방문객 수(10, 20, 200) - 객실 최대 허용 인원 - 이번 달 판매 티켓 수 |
데이터 형식 분류 | 정의 | 예 |
정성적 데이터 | 품질 및 특성을 주관적으로 설명하는 측정값 | - 가장 많이 한 운동 - 가장 충성 고객이 많은 브랜드 - 청소년의 패션 선호도 |
정량적 데이터 | 구체적이고 객관적인 수치적 사실의 측정값 | - 전문의 중 여성의 비율 - 아프리카의 코끼리 개체 수 - 지구에서 화성까지의 거리 |
데이터 형식 분류 | 정의 | 예 |
명목형 데이터 | 정해진 순서로 분류되지 않은 정성적 데이터의 유형 | - 신규 고객, 재구매 고객, 단골 고객 - 새 지원자, 기존 지원자, 내부 지원자 - 신규 매물, 가격 하락 매물, 가압류 매물 |
순서형 데이터 | 정해진 순서나 크기가 있는 정성적 데이터의 유형 | - 영화 평가(별점: 별 1개, 2개, 3개) - 순위 투표(1위, 2위, 3위) - 소득 수준(저소득, 중간소득, 고소득) |
데이터 형식 분류 | 정의 | 예 |
구조화된 데이터 | 행과 열처럼 특정 형식으로 구성된 데이터 | - 지출 보고서 - 소득세 신고서 - 매장 재고 |
비구조화된 데이터 | 쉽게 식별할 수 있는 방식으로 구성되지 않은 데이터 | - 소셜 미디어 게시물 - 이메일 - 동영상 |
구조화된 데이터의 이해
구조화된 데이터란?
구조화된 데이터는 열과 행과 같은 정해진 형식으로 조직된 데이터입니다. 이러한 데이터는 스프레드시트나 데이터베이스와 같은 형식으로 저장되며, 데이터를 입력하고, 쿼리하며, 분석하는 데 용이합니다.
비구조화된 데이터와의 차이
대부분의 데이터는 비구조화된 상태로 생성됩니다. 예를 들어, 오디오 파일, 동영상 파일, 이메일, 사진, 소셜 미디어에서 생성되는 데이터는 비구조화된 데이터입니다. 이 데이터는 분석하기 전에 구조화된 형식으로 변환해야 합니다. 따라서 비구조화된 데이터를 다룰 때는 먼저 이를 구조화된 데이터로 변환하는 작업이 필요합니다.
데이터 모델
데이터 모델은 데이터를 구성하고, 그 요소 간의 관계를 보여주는 도구입니다. 예를 들어, 사람의 이름, 계좌 번호, 주소와 같은 정보가 데이터 요소가 되며, 데이터 모델은 이러한 요소들이 어떻게 연결되는지 시각적으로 나타냅니다. 데이터 모델을 사용하면 데이터를 더 일관성 있게 관리하고, 분석에 필요한 데이터를 쉽게 이해할 수 있습니다.
구조화된 데이터의 활용
구조화된 데이터는 여러 면에서 유용합니다. 데이터베이스에서 쉽게 쿼리하고, 데이터를 시각화하는 데 매우 적합합니다. 예를 들어, 차트, 그래프, 히트맵, 대시보드 등 다양한 시각화 도구를 사용해 데이터를 직관적으로 표현할 수 있습니다. 또한, 스프레드시트나 관계형 데이터베이스와 같은 도구에서 구조화된 데이터를 사용하면 데이터 분석 작업이 훨씬 수월해집니다.
스프레드시트를 통한 구조화된 데이터 탐색
스프레드시트는 구조화된 데이터를 다루는 데 매우 유용한 도구입니다. 이를 통해 데이터를 정리하고, 필터링하며, 다양한 분석 작업을 수행할 수 있습니다. 또한, 다양한 데이터 유형을 쉽게 관리하고 시각화할 수 있습니다. 구조화된 데이터를 통해 차트나 그래프를 만들어 데이터를 시각적으로 이해하기 쉽게 만들 수 있습니다.
이번 시간에는 구조화된 데이터의 중요성과 이를 활용하는 방법에 대해 살펴보았습니다. 데이터 모델을 통해 데이터의 관계를 이해하고, 구조화된 데이터를 사용해 데이터를 시각화하며 분석할 수 있습니다.
데이터 구조
데이터는 어디에나 존재하고 다양한 방식으로 저장될 수 있습니다. 데이터는 일반적으로 다음 두 가지로 분류됩니다.
- 구조화된 데이터: 행과 열처럼 특정 형식으로 구성된 데이터입니다.
- 비구조화된 데이터: 쉽게 식별할 수 있는 방식으로 구성되지 않은 데이터입니다.
예를 들어 좋아하는 음식점을 온라인으로 평가하는 경우 구조화된 데이터가 생성됩니다. 반면 Google 어스를 사용하여 위성 이미지로 음식점 위치를 확인할 때는 비구조화된 데이터가 사용됩니다.
구조화된 데이터와 비구조화된 데이터의 특성을 복습해보세요.
구조화된 데이터
앞서 설명했듯이 구조화된 데이터는 특정 형식으로 구성됩니다. 따라서 비즈니스의 요구사항에 맞게 저장하여 조회하기가 쉽습니다. 데이터를 내보낼 때 데이터 구조도 함께 내보내집니다.
비구조화된 데이터
비구조화된 데이터는 쉽게 식별할 수 있는 방식으로 구성될 수 없는 데이터입니다. 세상에는 구조화된 데이터보다 비구조화된 데이터가 훨씬 많습니다. 동영상 및 오디오 파일, 텍스트 파일, 소셜 미디어 콘텐츠, 위성 이미지, 프레젠테이션, PDF 파일, 설문조사 주관식 응답, 웹사이트 등은 모두 비구조화된 데이터 유형에 해당합니다.
공정성 문제
비구조화된 데이터는 구조가 없기 때문에 검색, 관리, 분석이 어렵습니다. 그러나 최근 인공지능과 머신러닝 알고리즘의 발전으로 이러한 어려움이 해소되고 있습니다. 이제 데이터 과학자는 이러한 도구를 포용적이고, 편향되지 않도록 보장해야 하는 새로운 과제를 마주하게 되었습니다. 그러지 않으면 데이터 세트의 특정 요소가 다른 요소보다 과도하게 평가되거나 다른 요소를 잘못 대표할 수 있습니다. 또한 불공정한 데이터 세트가 모집단을 정확하게 대표하지 않으면 왜곡된 결과, 낮은 정확도, 신뢰할 수 없는 분석이 야기됩니다.
데이터 모델링 수준 및 기법
이 읽기 자료에서는 데이터 모델링과 다양한 데이터 모델 유형을 소개합니다. 데이터 모델은 데이터를 일관되게 유지하고, 데이터 구성 방식을 계획하는 데 도움이 됩니다. 애널리스트와 기타 이해관계자가 기본 정보를 잘 파악할 수 있으면 데이터를 이해하고 알맞게 사용하기가 쉬워집니다.
참고: 주니어 데이터 애널리스트가 데이터 모델 설계를 요청받는 일은 드뭅니다. 하지만 조직이 이미 사용하는 기존 데이터 모델을 마주하게 될 수 있습니다.
데이터 모델링이란 무엇인가요?
데이터 모델링은 데이터의 구성 및 구조화 방식을 시각적으로 나타내는 다이어그램을 만드는 프로세스이며, 이러한 시각적 표현을 데이터 모델이라고 합니다. 데이터 모델링은 주택 설계도에 빗댈 수 있습니다. 전기 기사, 목수, 배관공은 언제든 설계도를 참고합니다. 기술자들이 설계도를 활용하는 방식은 제각기 다르지만 모두 집 전체의 구조를 이해하기 위해 설계도가 필요합니다. 데이터 모델도 마찬가지입니다. 사용자마다 데이터 요구사항이 다를 수 있지만, 누구나 데이터 모델을 통해 전체 구조를 이해할 수 있습니다.
데이터 모델링 수준
데이터 모델링은 수준마다 상세한 정도가 다릅니다.
가장 일반적인 데이터 모델링 유형 세 가지
- 개념적 데이터 모델링은 조직 내 데이터의 상호작용 방식 등 포괄적인 수준의 데이터 구조입니다. 예를 들어 개념적 데이터 모델은 새 데이터베이스의 비즈니스 요구사항을 정의하는 데 사용될 수 있습니다. 개념적 데이터 모델에는 기술적 세부정보가 포함되지 않습니다.
- 논리적 데이터 모델링은 관계, 속성, 개체 등 데이터베이스의 기술적 세부정보에 중점을 둡니다. 예를 들어 논리적 데이터 모델은 데이터베이스에서 개별 레코드를 고유하게 식별하는 방식을 정의합니다. 하지만 데이터베이스 테이블의 실제 이름을 사용하지는 않습니다. 실제 이름은 물리적 데이터 모델에서 사용합니다.
- 물리적 데이터 모델링은 데이터베이스의 작동 방식을 보여줍니다. 물리적 데이터 모델은 사용되는 모든 개체와 속성을 정의합니다. 예를 들면 테이블 이름, 열 이름, 데이터베이스의 데이터 유형 등이 포함됩니다.
데이터 모델 비교를 확인해볼 수 있는 페이지에서 자세한 내용을 참고하세요.
데이터 모델링 기법
데이터 모델 개발의 접근방법은 다양하지만, 일반적인 두 가지 방법은 개체-관계 다이어그램(ERD)과 통합 모델링 언어(UML)입니다. ERD는 데이터 모델에서 개체 간의 관계를 이해하는 데 사용되는 시각적 방식입니다. UML 다이어그램은 시스템의 개체, 속성, 운영, 관계를 보여주면서 시스템 구조를 설명하는 아주 상세한 다이어그램입니다. 주니어 데이터 애널리스트로서 여러분은 다양한 데이터 모델링 기법이 있다는 사실을 알아야 하지만, 실무에서는 소속 조직의 기존 기법을 사용하게 됩니다.
ERD, UML, 데이터 사전에 관한 자세한 내용은 데이터 모델링 기법 문서를 참고하세요.
데이터 분석 및 데이터 모델링
데이터 모델링은 포괄적으로 데이터를 살펴보고 조직의 전체 정보 시스템 내 데이터의 관계를 파악하는 데 도움이 됩니다. 데이터 모델링을 위해 데이터 애널리스트가 데이터의 관계를 이해해야 할 때도 있습니다. 이렇게 하면 데이터의 매핑 방법을 결정할 수 있습니다. 마지막으로 데이터 모델은 조직 구성원 누구나 더 쉽게 데이터를 이해하고 데이터 작업을 위해 협업하는 데 도움이 됩니다. 이는 여러분과 팀원 모두에게 중요합니다.
데이터 유형, 필드, 값 살펴보기
작업 대상 데이터 유형 파악
데이터 유형이란?
데이터 유형은 우리가 작업하는 데이터의 종류를 나타냅니다. 스프레드시트에서 주로 사용되는 데이터 유형은 숫자, 텍스트(또는 문자열), 그리고 불리언의 세 가지입니다. 각각의 데이터 유형은 특정한 형식의 데이터를 나타내며, 올바르게 사용해야만 데이터 분석에서 오류를 피할 수 있습니다.
주요 데이터 유형
- 숫자(Numeric):
- 숫자는 측정하거나 계산할 수 있는 값을 나타냅니다. 예를 들어, 특정 주간의 검색 관심도를 나타내는 숫자 값은 '100'처럼 가장 높은 인기도를 의미합니다. 이러한 숫자 데이터는 계산을 위해 사용되며, 예를 들어 평균값을 구할 때도 사용됩니다.
- 텍스트 또는 문자열(Text/String):
- 텍스트 데이터 유형은 이름, 주소, 설명 등 문자와 구두점으로 이루어진 데이터입니다. 예를 들어, 가장 인기 있는 간식 이름(예: '아이스크림')이 텍스트 데이터 유형에 해당합니다. 문자로 이루어진 숫자(예: 전화번호)도 텍스트 데이터로 간주되지만, 이 경우 계산에 사용되지 않습니다.
- 불리언(Boolean):
- 불리언 데이터 유형은 참(True) 또는 거짓(False)이라는 두 가지 값만 가질 수 있습니다. 예를 들어, 주별 검색 관심도가 50 이상인지 여부를 나타내는 데이터가 불리언 데이터입니다. 불리언 데이터는 조건을 만족하는지 확인하는 데 주로 사용됩니다.
데이터 유형의 올바른 사용
스프레드시트에서 데이터 유형을 잘못 사용하면 오류가 발생할 수 있습니다. 예를 들어, 숫자 데이터 유형은 계산에 사용할 수 있지만, 텍스트나 불리언 데이터 유형은 그렇지 않습니다. 따라서 데이터를 분석할 때는 각 셀이 어떤 데이터 유형을 가지고 있는지 정확히 이해하고 있어야 합니다. 이를 통해 데이터 오류를 최소화하고, 정확한 분석을 할 수 있습니다.
불리언 로직의 이해
이 읽기 자료에서는 불리언 로직의 기본사항을 살펴보고 불리언 조건문에서 조건을 여러 개 사용하는 방법을 배웁니다. 조건은 AND, OR, NOT 등 불리언 연산자로 지정합니다. 이 연산자는 수학 연산자와 유사하며 결과를 필터링하는 논리적인 조건문을 만드는 데 사용할 수 있습니다. 데이터 애널리스트는 불리언 조건문을 사용하여 검색을 위한 쿼리 생성, 프로그래밍 코드 작성 시 조건 확인 등 폭넓은 데이터 분석 작업을 합니다.
불리언 로직 예
다음의 선호에 따라 신발을 쇼핑한다고 생각해보겠습니다.
- 분홍색과 회색인 신발만 구매합니다.
- 전체가 분홍색이거나, 전체가 회색이거나, 회색과 분홍색이 섞여 있는 신발만 구매합니다.
- 회색인 신발을 구매하지만 분홍색이 섞여 있으면 구매하지 않습니다.
다음은 이러한 선호를 나타내는 벤 다이어그램입니다. AND는 두 조건이 겹치는 벤 다이어그램의 중심입니다. OR는 각 조건 하나에 해당합니다. NOT은 예외를 포함하지 않는 벤 다이어그램 부분만 해당합니다.
AND 연산자
여기에서 조건은 '회색과 분홍색이 섞여 있는 신발인 경우 구매한다'입니다. 불리언 문은 로직을 세부적으로 나눠 두 색상을 기준으로 결과를 필터링합니다. 따라서 'IF (색상=”회색”) AND (색상=”분홍색”)일 때 신발을 구매한다'가 됩니다. AND 연산자를 사용하면 조건을 여러 개 쌓을 수 있습니다.
아래는 이 문에서 작동하는 불리언 로직을 요약한 진리표입니다. 색상이 회색 열에서는 신발 두 켤레가 색상 조건을 충족합니다. 색상이 분홍색 열에서는 신발 두 켤레가 색상 조건을 충족합니다. 하지만 If 회색 AND 분홍색 열에서는 두 조건을 충족하는 신발이 한 켤레뿐입니다. 따라서 조건문의 불리언 로직에 따라 한 켤레만 True로 표시됩니다. 즉 구매할 수 있는 신발은 한 켤레입니다.
색상이 회색 | 색상이 분홍색 | If 회색 AND 분홍색일 때 | 구매불리언 로직 |
회색/True | 분홍색/True | True/구매 | True AND True = True |
회색/True | 검은색/False | False/구매 안 함 | True AND False = False |
빨간색/False | 분홍색/True | False/구매 안 함 | False AND True = False |
빨간색/False | 녹색/False | False/구매 안 함 | False AND False = False |
OR 연산자
OR 연산자는 두 조건 중 하나를 충족할 때 다음을 진행합니다. 여기에서 조건은 '회색 또는 분홍색 신발인 경우 구매한다'입니다. 따라서 불리언 문은 'IF (색상=”회색”) OR (색상=”분홍색”)일 때 신발을 구매한다'가 됩니다. 불리언 로직에 따라 색상이 회색 또는 색상이 분홍색 조건 중 하나를 충족하는 신발이 True로 표시됩니다. 다음 진리표에 따르면 구매할 수 있는 신발은 세 켤레입니다.
색상이 회색 | 색상이 분홍색 | If 회색 OR 분홍색일 때 | 구매불리언 로직 |
빨간색/False | 검은색/False | False/구매 안 함 | False OR False = False |
검은색/False | 분홍색/True | True/구매 | False OR True = True |
회색/True | 녹색/False | True/구매 | True OR False = True |
회색/True | 분홍색/True | True/구매 | True OR True = True |
NOT 연산자
마지막으로 NOT 연산자는 결과에서 특정 조건을 제외하여 결과를 필터링합니다. 여기에서 조건은 '분홍색이 약간이라도 섞여 있는 신발을 제외한 회색 신발을 구매한다'입니다. 따라서 불리언 문은 'IF (색상="회색") AND (색상=NOT “분홍색”)일 때 구매한다'가 됩니다. 그러면 분홍색이 섞여 있지 않은 모든 회색 신발은 불리언 로직의 NOT 분홍색 조건에 따라 True로 표시되고, 분홍색 신발은 불리언 로직의 NOT 분홍색 조건에 따라 False로 표시됩니다. 아래 진리표에서 신발 한 켤레가 제외됩니다.
색상이 회색 | 색상이 분홍색 | NOT 분홍색 조건의 불리언 로직 | If 회색 AND (NOT 분홍색)일 때 | 구매불리언 로직 |
회색/True | 빨간색/False | Not False = True | True/구매 | True AND True = True |
회색/True | 검은색/False | Not False = True | True/구매 | True AND True = True |
회색/True | 녹색/False | Not False = True | True/구매 | True AND True = True |
회색/True | 분홍색/True | Not True = False | False/구매 안 함 | True AND False = False |
조건을 여러 개 사용할 때 이점
불리언 로직은 단일 문에서 여러 조건을 결합하여 사용할 때 가장 유용합니다. 예를 들어 회색 또는 분홍색이면서 방수 기능이 있는 신발을 필터링하고 싶은 경우 불리언 문을 'IF ((색상 = ”회색”) OR (색상 = “분홍색”)) AND (방수=”True”)'로 작성하면 됩니다. 조건은 괄호를 사용하여 그룹화합니다.
새 신발을 검색하든 로직을 데이터베이스 쿼리에 적용하든 불리언 로직을 사용하면 여러 조건을 만들어 결과를 필터링할 수 있습니다. 불리언 로직 사용 원리를 배웠으니 이제 불리언 로직을 사용할 수 있을 것입니다.
추가 읽기 자료/리소스
- 불리언 로직의 선구자에 관한 자세한 내용은 Origins of Boolean Algebra in the Logic of Classes를 참고하세요.
- AND, OR, NOT 사용 방법에 관한 자세한 내용은 불리언 연산자를 사용한 검색 팁을 참고하세요.
데이터 테이블 구성요소
테이블의 구성 요소
- 레코드(Records): 테이블의 각 행(row)을 의미하며, 데이터의 한 단위를 나타냅니다. 예를 들어, 재생목록의 각 노래가 하나의 레코드입니다.
- 필드(Fields): 테이블의 각 열(column)을 의미하며, 특정 속성을 나타냅니다. 재생목록에서 노래 제목, 아티스트, 길이 등 각각이 필드에 해당합니다.
- 값(Values): 레코드와 필드가 교차하는 셀(cell)에는 특정 값이 들어 있습니다. 예를 들어, 재생목록에서 '노래 제목' 필드의 값은 'Imagine'이 될 수 있고, '아티스트' 필드의 값은 'John Lennon'일 수 있습니다.
데이터 유형
각 필드는 서로 다른 데이터 유형을 가질 수 있습니다. 예를 들어:
- 텍스트/문자열(Text/String): 노래 제목, 아티스트 이름 등
- 숫자(Numeric): 노래의 길이(예: 3분 45초)
- 불리언(Boolean): 즐겨찾기 여부(참 또는 거짓)
실생활에서의 활용
이러한 개념은 음악 재생목록, 캘린더 일정, 이메일 받은편지함뿐 아니라 다양한 스프레드시트나 데이터베이스에서 동일하게 적용됩니다. 고객 정보, 제품 목록, 판매 기록 등 다양한 데이터를 테이블로 정리하면, 데이터 분석을 더 효율적으로 수행할 수 있습니다.
가로형 및 세로형 데이터 알아보기
가로형 데이터 (Wide Format)
- 구조: 하나의 주제(예: 국가)에 대한 여러 속성(예: 연도별 인구수)이 여러 열로 배열됩니다.
- 장점: 여러 속성을 한눈에 비교하기 쉽습니다. 예를 들어, 국가별 연도별 인구 수를 쉽게 비교할 수 있습니다.
- 예시: 각 행이 특정 국가를 나타내고, 각 열이 연도별 인구 수를 나타내는 경우.
세로형 데이터 (Long Format)
- 구조: 하나의 속성(예: 인구수)에 대해 여러 항목(예: 국가와 연도)의 데이터가 각 행에 배열됩니다.
- 장점: 데이터가 더 간결하게 정리되어 있고, 추가 변수를 쉽게 추가할 수 있습니다. 예를 들어, 평균 연령 데이터를 추가하려면 단지 하나의 열만 더 추가하면 됩니다.
- 예시: 각 행이 국가와 연도를 나타내고, 그에 따른 인구 수가 기록된 경우.
변환과 사용
- 상황에 따라 선택: 분석 목적에 따라 가로형 데이터를 세로형 데이터로 변환하거나 그 반대의 작업이 필요할 수 있습니다.
- 실무 적용: 실제 업무에서는 두 형식을 모두 사용하게 되며, 데이터를 어떤 형식으로 구성하느냐에 따라 분석 과정이 크게 달라질 수 있습니다.
데이터 변환
데이터 변환이란 무엇인가요?
데이터를 발표하는 여성, 메달을 쥔 손, 대화하는 두 사람, 선박 조타, 서로 손뼉을 마주치는 두 사람
이 읽기 자료에서는 데이터의 변환 방식, 가로형 데이터와 세로형 데이터의 차이를 살펴봅니다. 데이터 변환은 데이터의 형식, 구조, 값을 변경하는 프로세스입니다. 분석하기 쉽게 만들기 위해 데이터를 변환하기에 적절한 시기가 있습니다.
데이터 변환에는 주로 다음 작업이 포함됩니다.
- 데이터 추가, 복사, 복제
- 필드 또는 레코드 삭제
- 변수 이름 표준화
- 데이터베이스의 열 이름 변경, 이동, 결합
- 한 데이터 세트를 다른 데이터 세트와 연결
- 파일을 다른 형식으로 저장. 예: 스프레드시트를 CSV(쉼표로 구분된 값) 파일로 저장
데이터를 변환하는 이유
데이터 변환의 목적은 다음과 같습니다.
- 데이터 구성: 사용하기 쉽도록 데이터를 구성합니다.
- 데이터 호환성: 다양한 애플리케이션 또는 시스템에서 동일한 데이터를 사용할 수 있도록 합니다.
- 데이터 이전: 형식이 일치하는 데이터를 시스템 간에 이동합니다.
- 데이터 병합: 구성이 동일한 데이터를 서로 병합합니다.
- 데이터 개선: 보다 세부적인 필드를 사용해 데이터를 표시합니다.
- 데이터 비교: 데이터를 합리적인 기준으로 비교합니다.
데이터 변환 예: 데이터 병합
배관 회사를 소유한 마리오는 수년간 비즈니스를 운영한 후 다른 배관 회사를 인수했습니다. 새로 인수한 회사의 고객 정보를 기존 회사의 고객 정보와 병합하고 싶지만 두 회사는 서로 다른 데이터베이스를 사용합니다. 따라서 데이터를 호환 가능하도록 만들어야 합니다. 이를 위해 인수한 회사의 데이터 형식을 변환해야 합니다. 그런 다음 두 회사에 모두 속한 고객의 정보가 담긴 중복 행을 삭제해야 합니다. 데이터를 호환 가능하도록 만들고 결합하면 마리오의 배관 회사는 완전하게 병합된 고객 데이터베이스를 보유할 수 있습니다.
데이터 변환 예: 데이터 구성(세로형에서 가로형으로)
세로형 데이터를 가로형 데이터로 변환하면 차트를 더 쉽게 만들 수 있습니다. 세로형 데이터로 수집된 주가 데이터를 가로형 데이터로 변환하는 다음 예시를 살펴보겠습니다.
세로형 데이터는 특정 항목에 관한 단일 데이터 포인트가 각 행에 포함된 데이터입니다. 아래의 세로형 데이터 예에는 특정 날짜에 해당하는 Apple(AAPL), Amazon(AMZN), Google(GOOGL)(특정 항목)의 개별 주가(데이터 포인트)가 나와 있습니다.
세로형 데이터 예: 주가
가로형 데이터는 열에서 식별된 특정 항목에 관한 여러 데이터 포인트가 각 행에 포함된 데이터입니다.
가로형 데이터 예: 주가
데이터를 가로형 데이터로 변환하면 동일한 기간의 회사별 주가 추이를 비교하는 차트를 만들 수 있습니다.
세로형에 포함된 모든 데이터가 가로형에도 포함되어 있으나 가로형 데이터가 읽고 이해하기에 더 쉽습니다. 따라서 가로형 데이터를 세로형 데이터로 변환하기보다는 세로형 데이터를 가로형 데이터로 변환하는 경우가 더 많습니다. 다음 표에는 각 형식이 선호되는 경우가 간략하게 나와 있습니다.
가로형 데이터 선호 | 세로형 데이터 선호 |
각 주제에 관한 몇 가지 변수로 테이블과 차트 생성 | 각 주제에 관한 많은 변수 저장( 예: 은행별 60년 치 이율) |
선 그래프 비교 | 고급 통계 분석 또는 그래프 작업 |