데이터분석/판데분실

[판데분실] 1부 - 1강 :: 데이터 분석 소개

묘걍 2023. 9. 18. 21:50

- 데이터 과학에도 데이터를 분석하고 분석 결과를 제시해야할 대 다라야할 작업흐름이 있다

     ▶ 통계학이 핵심

     - 통계학은 데이터를 설명하고 예측하며, 이에 대한 결론을 도출하는 방법을 제공한다.

git

https://www.freecodecamp.org/news/learn-the-basics-of-git-in-under-10-minutes-da548267cc91/

 

Learn the Basics of Git in Under 10 Minutes

by Gowtham Venkatesan Learn the Basics of Git in Under 10 Minutes Yes, the title is a clickbait. There is no way you can understand the basics of git technology in just 10 minutes. But you can get pretty close in about 25 minutes. And that is the purpose o

www.freecodecamp.org

https://github.com/stefmolin/Hands-On-Data-Analysis-with-Pandas-2nd-edition

 

GitHub - stefmolin/Hands-On-Data-Analysis-with-Pandas-2nd-edition: Materials for following along with Hands-On Data Analysis wit

Materials for following along with Hands-On Data Analysis with Pandas – Second Edition - GitHub - stefmolin/Hands-On-Data-Analysis-with-Pandas-2nd-edition: Materials for following along with Hands-...

github.com


데이터 분석 기초

- 데이터 분석은 수집(collection), 준비(preparation) 또는 랭글링(wrangling), 탐색적 데이터 분석(EDA: Exploratory Data Analysis) 그리고 결론 도출을 포함하는 매우 반복적인 과정이다.

데이터 분석 작업 흐름

- 실제로 데이터 분석 과정은 데이터 준비가 대부분이다.

     - 설문조사에 따르면 데이터 과학자들은 데이터 준비가 작업의 80%를 차지한다고 한다.

- Pandas가 데이터 준비 단계에서 중요한 역할을 한다.

 

데이터 수집 (Data Collection)

- 모든 데이터 분석의 첫 번째 단계

  • 웹 스크래핑(web scraping)
    • 주로 selenium, requests, scrapy, beautifulsoup과 같은 파이썬 패키지를 사용해 웹사이트 HTML에서 데이터를 추출
  • 응용 프로그램 인터페이스(APIs, Application Programming Interfaces)
    • URL이나 파이썬 requsets 패키지를 이용해 HTTP 요청(request)으로 데이터를 수집할 수 있는 웹 서비스
  • 데이터베이스
    • SQL이나 다른 데이터베이스 질의 언어로 데ㅣ터를 추출할 수 있다.
  • 정부 웹사이트나 야후 금융과 같이 다운로드로 데이터를 제공하는 인터넷 사이트
  • 로그 파일

- 우리 주변에는 수많은 데이터가 있지만 결론을 도출하는 데 도움이 될 데이터를 수집하는 게 중요하다

- 처음부터 완벽한 데이터를 찾으려하지는 말것

     - 초기 데이터셋에 추가 / 제거

     - 형식 바꾸기

     - 다른 데이터와 병합

     - 다른 방식으로 변환

     가능성이 늘 존재함

→ 랭글링 필요

 

데이터 랭글링(Data Wrangling)

- 데이터를 준비하고 분석에 사용할 수 있는 형식으로 바꾸는 과정

- 데이터는 더럽다

   고로 사용하기 전에 정제(cleaning)/준비(preperation) 과정이 필요하다.

데이터 준비시 발생할 수 있는 문제

  • 인적 오류(human error)
    • 오타, 잘모소딘 기록 및 수집, 저장 방식 차이
  • 컴퓨터 오류(computer error)
    • 데이터 손실 (데이터가 저장되지 않음)
  • 예상치 못한 값(unexpected value)
    • 데이터 기록 중 수치 열에 결측값 대신 ?를 사용한다면 해당 열의 모든 데이터는 수치대신 텍스트 형태가 된다
  • 불완전한 정보(incomplete imformation)
    • 설문조사 시 모든 사람이 모든 질문에 대답하지 않을 수 있고 이는 결측값이다.
    • 하지만 이는 인적 오류나 컴퓨터 오류가 아니다.
  • 해상도(resolution)
    • 데이터 수집에 걸리는 시간이 다르다 (초당, 혹은 오랜 시간)
  • 필드(field)와의 관련성
    • 데이터는 종종 분석을 위한 목적으로 수집되는 것이 아니라 어떤 과정의 결과로 수집되거나 만들어진다.
    • 데이터를 사용할 수 있는 상태로 만들려면 젱제해야 한다
  • 데이터 형식
    • 데이터는 분석에 도움이 되지 않는 형식으로 기록될 수 있다
    • 데이터를 재구성(reshape)해야한다.
  • 데이터 기록 과정에서 잘못된 구성(misconfiguration)
    • 잘못 구성된 트래커(tracker)나 웹훅(webhook)과 같은 출처에서 나온 데이터는 필드가 빠지거나 잘못된 순서로 전달될 수 있다.

- 이와 같은 데이터 품질 문제는 해결 가능

- 하지만 해결하지 못하는 경우도 있다 (일 단위 데이터를 시간당 데이터로 바꿔야할 경우)

- 탐색적 데이터 분석시 랭글링을 더 해야할 수도 있다. (서로 얽혀 있음)

 

탐색적 데이터 분석

- 시각화와 요약 통계를 사용한다.

시각화

- 사람의 뇌는 시각적 패턴을 잘 분간할 수 있다

- 모든 데이터 분석에서 데이터 시각화는 필수

- 일부 특성(charateristic)은 그림(plot)을 통해서만 관찰할 수 있다.

- 데이터에 따라 관심 변수가 시간의 흐름에 따라 어떻게 변하는지 이해하거나

- 각 범주(category)에 속하는 관측(observation)을 비교하거나

- 특이값(outlier)을 찾거나

- 연속 변수(continuous variable)와 이산변수(discrete variable)의 분포를 살펴보고 그림을 그릴 수 있다.

데이터 시각화는 종종 오해의 소지가 있다
일반적으로 y측의 척도(scale)로 인해 발생함
- 대부분의 시각화 도구가 기본적으로 패턴을 가까이서 보여주려 그림을 확대하기 때문?
   소프트웨어는 가능한 모든 그림에 대해 적절한 축 한계를 알기 어려우므로 결과를 제시하기 전에 우리가 축을 적절히 조정해야한다
  • 데이터는 탐색적 데이터 분석을 하기 전에 준비돼야 한다
  • 탐색적 데이터 분석을 하는 동안 만들어진 시각화로 인해 추가적인 데이터 젱제 작업을 수행해야할 수도 있다
  • 데이터 랭글링은 요약 통계를 사용해 잠재적인 데이터 문제를 찾지만, 탐색적 데이터 분석은 데이터를 이해하는 데 사용한다.
    • 데이터 정제가 잘못되면 탐색적 데이터 분석을 수행할 때 결과가 왜곡될 수 있다
    • 데이터 랭글링 기술을 사용해 데이터의 부분집합에 대한 요약통계를 계산한다.

요약통계

- 요약통계를 계산할 때는 수집한 데이터의 유형을 염두에 둬야 한다.

양적 데이터(quantitative data)

- 양을 측정할 수 있음

 

범주형 데이터(categorical data)

- 설명이나 그룹 또는 범주

- 명목형(nominal)

  • 범주의 각 수준에 숫자를 부여할 수 있다
    • on=1/off=0(on은 1 off는 0) ➡️ 상태를 나타내는 숫자일 뿐 대소 비교는 의미가 없다

- 순서형(ordinal)

  • 범주에 순위를 매긴다
    • 낮음(low) < 중간(medium) < 높음(high)

정량적 데이터

- 구간척도(interval scale)

  • 온도 등,,
    • 두 도시의 온도를 비교할 수 있지만
    • 어떤 도시가 다른 도시보다 두 배 더 덥다고 말하는 것은 의미가 없다
  • 덧셈 / 나눗셈이 아니라 덧셈 / 뺄셈을 사용하는 것이 의미 있는 비교

- 비척도(ratio scale)

  • 곱셈과 나눗셈을 사용해야 의미엤게 비를 비교할 수 있다.
  • 가격, 크기, 개수

다음 단계로 결론 도출

 

결론 도출

  • 데이터 시각화 대 어떤 패턴이나 관계를 발견했나?
  • 데이터에서 정확한 예측을 할 수 있을 것 같은가? 데이터를 모델링하는 것이 합리적인가?
  • 결측 데이터(missing data)를 처리해야하는가? 어떻게 할 것인가?
  • 데이터는 어떤 분포인가?
  • 데이터가 질문에 답하거나 조사하고 있는 문제에 대한 통찰력을 얻는데 도움이 되는가?
  • 데이터를 새로 수집하거나 추가로 수집해야하는가?

- 모델링 하기로 결정했다면 모델링은 머신러닝과 통게학의 영역이다

- 데이터 모델링은 기술적으로는 데이터 분석이 아니다