자기계발 Diary

오늘의 공부 day_1(데이터 리터러시,데이터 관련,SQL 기초)

siron94 2024. 11. 1. 00:09
  • 데이터 리터러시란?

"데이터를 활용해 문제를 해결할 수 있는 능력

 

데이터를 잘 활용하려면 데이터를 활용해 문제를 잘 정의하고 해결해야 하고 잘 활용하도록 만들려면 데이터/실험 기반 사고방식이 자리 잡혀야 하고, 분석흐름대로 데이터를 탐색할 수 있는 환경이 필요하고, 이 과정을 도와주는 분석가들이 필요하다.

 

  • 데이터/실험 기반 사고방식

실험 프로세스/실험 보드

데이터/실험 기반의 사고방식이 만들어지려면, 모든 업무가 데이터와 실험 기반으로 이루어지도록 만드는 게 필요하고 진행하는 업무들부터 데이터 기반으로 사고방식으로 실행하도록 하는 것이 좋다

 

  • 해결하려는 문제 → 문제 정의
  • 관련 OKR → 전사 목표와 align 되어있는지
  • 측정 지표 → 문제와 지표가 align 되어있는지, 측정 가능한 것인지
  • 가설 검증 기준 → 성공 여부를 어떻게 판단할 것인지
  • 검증 후 변화될 액션 → 의미 없는 액션을 하는 게 아닌지
  • 결과 → 검증 기준으로 결과가 나왔는지
  • 학습한 점 → 어떤 학습을 했고, 다음 실험에는 어떻게 반영될 것인지

예시로 이 처럼 실험보드로 내용들을 가시화하고 실험과 데이터 기반 문제 해결중심으로 노력한다면 문제정의 -  설루션 - 측정 지표를 만드는데 익숙해진다.

 

 

 

  • 분석 흐름대로 데이터를 탐색할 수 있는 환경

 

  • 데이터맵

모든 지표를 도식화하면 너무 많은 지표가 담길 수 있기 때문에 지표에 집중해서 문제를 해결하도록 하기 위해 4가지 원칙으로 설정하는 것이 좋다, 지표들 간의 관계를 쉽게 이해할 수 있게 만들어 본인이 해결해야 하는 문제가 어떤 지표와 연관되어 있는지 빠르게 파악할 수 있다.

 

1. 데이터 맵은 가장 중요한 지표와 이를 구성하거나 영향을 주는 지표들의 연결관계를 표현한다

2. 주제와 지표에 따라 분할하여 작성한다

3. 데이터맵은 서로 연결하여 더 큰 지도가 된다.

4. 측정이 가능하고 직접 컨트롤이 가능해야 한다

 

  • 대시보드

분석 흐름을 따라가면서 지표들을 탐색할 수 있도록 해야 합니다. 최상위 문제를 발견하면, 각 지표와 관련된 하위 지표들이 구성된 분석 대시보드에서 원인을 짐작할 수 있습니다. 대시보드 관계만 보면 중요한 지표 변동과 원인을 파악하는 분석 정도는 스스로, 그리고 빠르게 할 수 있게 됩니다. 대시보드를 잘 활용하려면 3가지 원칙이 중요합니다

 

1. 현상과 문제를 보여줄 수 있어야 한다.

2. 지표 혹은 차트만 보고도 현재 상태를 즉각적으로 판단할 수 있어야 한다

3. 사용 목적별로 페이지가 구분되어야 한다.

 

 

 

  • 이 과정을 도와주는 분석가

 

  • 데이터 분석가

문제를 정의하고 원인을 분석한 뒤에는 액션 아이템까지 도출해 리포트를 제공받은 협업팀이 실행에 옮기도록 만들어야 합니다.

 

  • 데이터 플랫폼

데이터를 빠르게 준비해 사용할 수 있는 구조가 필요하며 그중 가장핵심은 세 가지

 

1. 모든 원천데이터가 적재되어 있는데이터 레이크

2. 신속하게 정확한 데이터를 추출해 낼 수 있도록 구조화된 데이터 웨어하우스

3. 데이터 레이크/웨어하우스 내에 어떤 데이터가 있는지 쉽게 확인할 수 있도록 만들어주는 데이터 카탈로그

 

데이터 웨어하우스 구축도 중요하다.

마지막으로 데이터를 보여주는 것만으로 문제 해결력이 좋아지지는 않습니다. 데이터를 바라보는 올바른 관점을 만드는 게 가장 중요했고, 이 관점을 유지·강화시키기 위한 환경이 필요하다.

 


 

  • 데이터를 잘못 해석하는 상황별 유형

 

  • 생존자 편향의 오류

2차 세계대전 당시 미 해군은 전투기의 총탄 자국이 많은 곳을 보강해, 더 튼튼한 전투기를 만드는 연구를 진행했습니다. 이때 통계학자 아브라함 왈드(Abrahan Wald)는 총탄 자국이 많은 곳이 아니라, 총탄 자국이 적은 곳을 강화해야 한다고 주장합니다. 무사 귀환한 전투기는 그 부위에 총탄을 맞고도 무사 귀환했을 만큼 크게 영향이 없었다는 것입니다. 이는 전체 전투기가 아닌 무사 귀환한 전투기를 대상으로 총탄 자국을 확인하다 보니 발생한 인지적 오류였습니다. 

 

생존자 편향의 오류를 하지 않으려면 전체 대상을 기준으로 잡아야 한다. 무사귀환한 전투기 대신 전체 전투기 기준으로 해석을 시도하면, 올바른 해석이 가능하다.

 

  • 심슨의 역설

전체 지표와 그룹을 나눈 지표의 방향성이 다르게 나타나는 상황을 심슨의 역설이라고 한다.

퍼널 전환율, 결제 전환율, 클릭률 등 여러 전환율 지표에서 심슨의 역설이 발생할 수 있습니다. 심슨의 역설을 방지하기 위해서는 전체 집단의 지표뿐만 아니라, 집단을 나누어 지표를 확인하는 과정이 필요합니다. 이때 사용자를 나눌 수 있는 기준은 다양하기 때문에, 특성이 다를 수 있다고 생각하는 기준들을 미리 정하여, 그 기준으로 지표를 살펴보는 것이 효과적입니다.

 

  • 상관관계를 통한 성급한 일반화

데이터를 자주 확인하고 여러 지표를 비교할수록, 관계를 파악하여 해석하려 하며 비슷해 보이는 패턴이 있다면 쉽게 일반화하는 경향이 있다. 그래서 상관성은 있으나 인과성이 없는 경우 제3의 공통 원인이 존재할 가능성이 높다

성급하게 일반화하는 것을 안 하려면 사용자의 행동과 심리를 인지적으로 구조화하고 동시에 영향을 줄 공통 원인이 있는지 살펴봐야 하며 새로운 구조로 지표 간의 관계를 파악하는 과정이 꼭 필요합니다.

 

  • 목적에 맞지 않는 지표 선택

같은 목적이 있더라도 어떤 관점에서 바라볼지 목적성을 명확히 해야 한다 그래야 제대로 된 의사 결정을 할 수 있다

 

  • 세이건 표준 참고하기

“특별한 주장에는 특별한 근거가 필요하다. (Extraordinary Claims Require Extraordinary Evidence, ECREE)” - 칼 세이건의 ‘세이건 표준’

 

데이터를 가공하는 과정에서 기준과 방법에 따라 바뀔 수도 있고 해석하는 사람의 생각이 반영될 수 있다

데이터를 주장하려면 충분한 근거 확보, 잘못 해석했을 가능성, 인지적으로 노력이 필요하다.

 


 

  • SQL 기초

 

SQL은 데이터베이스와 대화하기 위한 언어하고 할 수 있고 SQL을 이용해 데이터베이스에게 특정 데이터를 요청할 수 있다.

SQL과 Query는 동일한 의미다.

SQL은 데이터베이스에게 명령을 전달하는 문법을 제공하고 Query는 이러한 명령어로 데이터베이스에게 직접 명령하는 것을 말합니다.

SQL 명령어를 사용해 데이터를 요청하고 이를 Query라고도 합니다.

SQL을 작성하는 것은 Query를 작성하는 것과 같다

 

 

  • 데이터베이스

데이터베이스는 데이터 저장되는 큰 폴더로 각각 형태에 따라 종류가 다르다

 

 

  • 테이블, 컬럼
테이블은 데이터베이스에서 각각의 파일로, 행과 열의 구조로 되어 있고 각 테이블에는 '컬럼(필드)'가 있다
 

테이블은 '데이터베이스'라는 큰 폴더 안에 파일이라고 생각하면 된다.

컬럼은 '테이블'이라는 파일 안에 각 열을 '컬럼' 혹은 '필드'라고 부릅니다.

 

 

  • SQL 데이터 조회하기 (SELECT, FROM)

Query를 작성하기 전에 어느 테이블에서 데이터를 가져올까? 생각해 보자

  • SELECT : 데이터를 가져오는 기본 명령어로, 데이터를 조회하는 모든 Query에 사용됨
  • FROM : 데이터를 가져올 테이블을 특정해 주는 문법
  • * : 모든 컬럼을 가져와준다는 의미

예시)     select *

             from food_orders

 

 

 

  • 필요한 항목만 뽑아서 사용하기
  • 원하는 컬럼을 선택하기
    • 테이블의 모든 컬럼이 필요하지 않을 때, 필요한 것만 선택하여 조회 가능합니다.
    • 모든 것을 조회한다는 * 대신에, 필요한 컬럼만 적어줍니다.

예시)      select 컬럼 1, 컬럼 2
               from 테이블

 

 

  • 컬럼에 별명(alias)을 주기 
    • 원하는 컬럼만 뽑았지만, 평소에 사용하는 명칭과 다를 때가 있습니다. 이럴 때 컬럼 명에 별명을 지정하여 변경할 수 있습니다.
    • 별명 지정 방법 : 컬럼 옆쪽에 별명을 적어줍니다.
  •           첫 번째 방법 : 컬럼 1 as 별명 1
  •           두 번째 방법 : 컬럼 2 별명 2

 

  • 별명 지을 때 유의사항
    • 영문, 언더바로 변경할 경우 별명만 적기  예시) ord_no
    • 특수문자, 한글로 변경할 경우 “별명” 으로, 큰 따옴표 안에 적는다   예시)   “ord no”  ”주문번호”

 

 


오늘은 생각보다 많은 것을 배웠는데 데이터 리터러시에 대해 자세하게 알 수 있어서 좋았고 특히 실험 기반의 사고방식과 거기에 맞는 환경이 필요하다는 점이 신기했음. 그리고 데이터에 대한 관점이 올바른 것이 중요하다는 것, 심리적인 요인이 데이터에도 영향을 끼칠 수 있는 점이 흥미로웠고 기준을 정확히 두고 전체적인 관점으로 보는 것이 중요할 것 같다.

SQL은 2년 만이라 익숙한듯한데 뭔가 어색한? 그런 느낌이 든다