ACAIT

[BDA 데분기] 9주차 - 데이터 시각화, 시계열 데이터 분석 본문

학회 활동/BDA 7기(데이터 분석 기초반)

[BDA 데분기] 9주차 - 데이터 시각화, 시계열 데이터 분석

831x99 2024. 1. 31. 22:27

저번 게시물에 이어 데이터 시각화 내용을 추가하고, 시계열 데이터 분석에 대해 정리해 보겠습니다.

 


 

1. 반복문 이용해서 시각화


 

2. Seaborn


2-1. sns.histplot()


2-2. sns.countplot()


2-3. sns.barplot()

  • hue 인자 넣으면 범례 추가.


2-4. sns.boxplot()


2-5. sns.violinplot()

  • 바이올린차트.
  • 연속확률분포 차트 곡선과 boxplot 함께 시각화.
  • 곡선 대칭, 가운데 몸통 수염.

  • 반복문으로 가능.
  • countplot: y축 고정.
  • boxplot: 자유롭게 y축과 estimator 조절.
  • 특징에 따라 원하는 시각화.


 

3. 시계열 데이터

  • 시간의 흐름을 보여주는 인덱스.
  • datatime을 이용해 시계열 데이터 확인할 예정.
  • 기존 분석과 다른 방식.
  • 보간법에서 본 것처럼 시간의 흐름을 마음대로 바꾸면 데이터 특성 사라짐.
  • 예측 진행 시 문제 발생.
  • 시계열 데이터는 머신러닝에서 train_test_split으로 랜덤하게 나눌 수 없다.

3-1. 시계열 데이터는

  • 시계열 데이터는 time과 관련해서 데이터 분할함.
  • 시계열 데이터는 pandas에서 제공하는 datatime, timestamp, timedelta 등 이용.
  • 대부분 datetime 이용해서 시계열 데이터로 변환하여 많이 사용.
  • 시계열 데이터 다루는 방법 확인할 예정.

3-2. 시계열 분석 방법

  • 고전적 시계열 분석 AR, MA, ARIMA, SARIMA 등등.
  • 보간법.
  • facebook에서 제공하는 prohpet. 쉬움.
  • tensorflow에서 제공하는 시계열 분석 패키지.
  • 딥러닝 LSTM, RNN 등등이 있음.

 

   1. datetime

  • 판다스에서 제공.
  • date + time
  • date: 연, 월 일, time: 시간, 분, 초, 마이크로초

 

   2. timestamp

  • 날짜와 시간 모두 가진 단일 객체

 

   3. timedelta

  • 객체 가지고 있으면서 시간 연산 가능.

 

4. 시계열 데이터 분석

4-1. datetime

4-1-1. date, time


4-1-2. timedelta


4-2. pd.to_datetime

  • 판다스에서 제공하는 메서드.
  • pd.to_datetime(날짜)

  • pd.to_datetime은 인간의 다양한 날짜 표기법을 자동으로 시계열 데이터 변환.
  • 날짜로 인식할 수 없는 이상 수치는 자동으로 확인.


4-3. 실제 데이터로 시계열 데이터 생성

4-3-1. 데이터 타입 수정

  • 시계열 데이터 다룰 때 타입 먼저 수정.
  • REPORTED_DATE를 문자열로 인식 중.

 


4-3-2. 시계열 데이터 쉽게 가공 위해 index 만들기


4-3-3. 이제 시계열 데이터로 작업 가능.

  • 인덱스로 데이터 추출.

  • 시간 단위까지도 데이터 추출 가능.
  • 원하는 시간 추출.

# 시계열 문법 중

  • offsets, first 등 근로기준일, 첫 주 월요일 등 다양한 문법 사용 가능.
  • 구글링을 통해 특정 기준으로 날짜 추출 확인해 보기.

4-4. resample 함수

  • 간단 요약 함수

  • 해당 범죄나 교통사고를 월별, 연도별로 카운팅 = groupby 개념.