-
Data Engineering - 데이터 랭글링 전과정 이해(week3-1)Data Engineering 2020. 9. 14. 17:57
오늘의 학습 목표
1. 데이터 랭글링 전과정 이해 : 사례 연습
2. 데이터 수집
3. 데이터 전처리
데이터 분석은 문제의식에서 출발
- 이 문제를 해결하기 위해 필요한 데이터는?
- 단순 과거 데이터가 아니라 관중수와 상관관계가 있는
데이터에 대한 연구부터 시작해야 한다.
- 예를 들면, 날씨와의 상관관계 등 -> EDA
1. 데이터 수집
데이터 수집 방법
- 파일로 다운 가능한지
- API로 제공되는지 (Ex - Google API)
- 웹 스크래핑
데이터의 형식
- 기계가 읽을 수 있는 데이터인지?
- csv파일 등
검색 후 그래프(중간에 빈 부분이 있음) - csv 읽고 출력하기
import csv f = open(‘seoul.csv’) # f : file handler data = csv.reader(f) # data : csv reader object for row in data: # -> iterate over lines print( row ) f.close()
2. 데이터 전처리
데이터 전처리
- 데이터 클리닝
- 데이터 통합 (Integration) – 표준화 등
- 데이터 변환 (Transformation) – 정규화 등
데이터 클리닝
- 결측값 처리
- 중복값 처리
- 이상치 확인 및 제거
import csv f = open('seoul.csv') # f : file handler data = csv.reader(f) # data : csv reader object header = next(data) for row in data: # -> iterate over lines row[-1] = float(row[-1]) # 데이터 변환 print( row ) f.close()
for row in data: # -> iterate over lines if row[-1] == '': # 데이터 클리닝 row[-1] = -999 else: row[-1] = float(row[-1]) # 데이터 변환 print( row ) f.close()
import csv f = open('seoul.csv') # f : file handler data = csv.reader(f) # data : csv reader object header = next(data) max_temp = -999 max_date = '' for row in data: # -> iterate over lines if row[-1] == '': row[-1] = -999 else: row[-1] = float(row[-1]) # 데이터 변환 # print( row ) if max_temp < row[-1]: max_date = row[0] max_temp = row[-1] f.close() print('최고기온 : ', max_date, max_temp)
EDA
Exploratory Data Analysis
- 탐색적 데이터 분석
- 수집한 데이터를 다양한 각도에서 관찰하고 이해하는 과정
- 데이터를 분석하기 전에 그래프나 통계적인 방법으로 자료를 직관적으로 바라보는 과정
EDA 과정
- ‘데이터 설명서(data description) 읽기’
- 시각화 방법으로
'Data Engineering' 카테고리의 다른 글
Data Engineering - DataFrame(pandas) 6-2 (0) 2020.10.12 Data Engineering - XML (0) 2020.09.28 Data Engineering - csv, json 읽기week4-1(3-2) (0) 2020.09.21 Anaconda 가상환경 설정하기 (0) 2020.09.09 데이터 엔지니어링이란? 2020-2 / 2주차-1 (0) 2020.09.07