-
[n111] EDA 데이터 전처리AI 부트캠프 2021. 9. 9. 10:27
데이터셋 불러오기
1. 데이터셋에 대한 정보를 파악한다.
- 행과 열의 수
- 열에 헤더가 있는가?
- 결측 데이터 (MIssing Data)가 있는가
- 원본의 형태 파악하기
: 빅데이터의 크기는 몇 기가~테라 단위인 경우가 있다. 미리 원본 형태를 파악 안하면 에러가 나도 알기 힘들다.
2. Pandas (데이터 관련된 함수를 모아 놓은 라이브러리)
pandas.read_csv()로 데이터셋을 불러온다.데이터셋을 colab에서 확인하는 방법 (권장하지 않는다)
ktng_data_url = 'https://ds-lecture-data.s3.ap-northeast-2.amazonaws.com/kt%26g/kt%26g_0.csv'
import pandas as pd # 데이터셋에 헤더 값을 넣어준다. column_headers = ['분기','매출액','영업이익','영업이익(발표기준)','세전계속사업이익', '당기순이익','당기순이익(지배)','당기순이익(비지배)','자산총계','부채총계', '자본총계','자본총계(지배)','자본총계(비지배)','자본금','영업활동현금흐름', '투자활동현금흐름','재무활동현금흐름','영업이익률','순이익률','ROE(%)', 'ROA(%)','부채비율','자본유보율','EPS(원)','PER(배)'] # pd 라이브러리에 있는 read_csv 함수를 이용하여 데이터셋을 불러온다. df = pd.read_csv(ktng_data_url, names = column_headers) df.head()
로컬 파일로부터 데이터셋 불러오기
파일 경로를 직접 사용 할 수는 없고, Google drive에 파일을 업로드 해야한다.
# 1. 구글 코랩 파일 업로드 패키지 from google.colab import files uploaded = files.upload()
EDA (Exploratory Data Analysis)
raw data를 바로 분석하기는 어렵다. 그러므로 초기 분석을 하는 단계를 EDA라고 한다.
- Graphic : 차트, 그림 등을 이용하여 데이터를 확인하는 방법.
- Non-Graphic : 그래픽 요소 없이 주로 Summary Statistics를 통해 데이터를 확인하는 방법.
EDA의 타겟
- Univariate
- Multi-variate : 여러 변수들 간의 관계를 보는 것이 주된 목적
Uni - Non Graphic
Sample data의 distribution을 확인하는 것이 주목적이다.
Numeric Data의 경우 평균, 중간값 등 Summary statistics를 활용.
Categorical Data의 경우 Occurence, Frequency 등을 확인 가능.
Uni - Graphic
Multi - Non Graphic
- Relationship을 보는 것이 주목적
- Cross-Tabulation
- Cross-Statistics (Correlation, Covariance)
Multi - Graphic
- Category & Numeric : Boxplots, Stacked bar, Parallel Coordinate, Heatmap
Pandas Features 활용하기
kt&g 의 매출액에 대해서 다음의 차트들을 생성하기
- Line Plot
- Scatter Plot
- Bar plot
df['순이익률'].plot()
# 세미콜론을 붙이면 description이 노출 되지 않는다. df['순이익률'].plot();
df['순이익률'].plot.hist();
df.plot.scatter('순이익률', 'ROE(%)');
df['순이익률'].plot.bar();
df['순이익률'].plot.barh();
코랩에서 한글 깨짐 현상 해결
코랩 파일 첫 번째 셀에 다음과 같이 코드를 실행한다.
!sudo apt-get install -y fonts-nanum !sudo fc-cache -fv !rm ~/.cache/matplotlib -rf
import matplotlib.pyplot as plt plt.rc('font', family='NanumBarunGothic')
실행 한 뒤 꼭, 런타임-런타임 다시 시작 버튼을 누른다.
Data Processing
목적이나 작업마다 데이터 전처리는 다르다. Data cleaning, integration, transformation 등이 있다.
Cleaning
일관성이 없는 데이터들을 제거 또는 보정한다. 단위를 맞춰 준다거나 format을 일치 시킨다.
Missing Value
- Ignore the tuple (결측치가 있는 데이터 삭제)
- Manual Fill (수동으로 입력)
- Global Constant ("Unknown")
- Imputation (All mean, Class mean, Inference mean, Regression 등)
Noisy Data
Descriptive Statistics 혹은 Visualization 등을 통해 제거 가능하다.
Integration
데이터들을 하나로 합치는 과정.
Transformation
데이터의 형태를 전환, scaling이라고 불리기도 한다.
부트캠프 공부 내용 한 눈에 보기
[인덱스] 코드 스테이츠 AI 부트캠프
구성 2021.09.09 ~ 2022.04 (총 28주) 배우는 내용 Section 1. 데이터 분석 입문 SPRINT 1. EDA SPRINT 2. Statistics SPRINT 3. DAY 1 EDA 데이터 전처리 Pandas in Colab 가설 검정 (t-test) T-Test 행렬 및 벡..
da-journal.com
'AI 부트캠프' 카테고리의 다른 글
[n121] 가설 검정 (t-test) (0) 2021.09.16 [n114] 미분 개념과 경사하강법 (0) 2021.09.14 [n113] Data Manipulation (concat, merge, melt, pivot, conditioning) (0) 2021.09.13 [n112] Feature Engineering (0) 2021.09.10 [n111] Pandas in Colab (0) 2021.09.09