UNIT 2-1 정형 데이터와 비정형 데이터
정형 데이터
데이터 베이스의 정해진 규칙에 맞게 구조화된 형태(스키마)로 구성된 데이터
머신러닝이 자주 사용
비정형 데이터
정해진 규칙 없이 다양한 형태로 구성된 데이터
딥러닝이 자주 사용
반정형 데이터
정형 데이터와 비정형 데이터가 완벽히 분리되지않는 형태의 데이터
로그 파일
데이터 웨어하우스와 데이터 레이크
데이터 웨어하우스
- 여러 시스템의 데이터베이스에 축적된 데이터를 공통의 형식으로 통합해서 관리하는 데이터 베이스
- 하나의 웨어하우스에서 주제별로 데이터 마트를 생성( 필요한것들만 뽑는다)
데이터 레이크
- 원래의 형식으로 대량 저장하여, 정형, 비정형, 반정형 데이터를 모두 적재
- Hadoop, spark 등 다양한 빅데이터 기술 요소를 포함
SUNIT 2-2 수치형 변수 처리
Scaling & Normalization
스케일링(Scaling)
-데이터 범위를 변경
- 라이브러리나 직접 코드를 짜서 할 수 있다.
- SVM, 최근접이웃 -> 거리가 중요, 그것이 스케일링이 필요한 이유
- StandardSclaer
평균을 0으로 만들고, 데이터를 단위 분사에 맞게 조정하여 표준 정규 분포를 따르게 스케일링
데이터가 정규분포일때만 좋다는 단점이 있다.
- MinMaxScaler
값의 범위를 [0,1] 또는 [-1,1] 범위가 되도록 최대최소값을 이용하여 스케일링
- RobustScaler
중앙값과 사분위수 범위를 사용하여 이상값에 강인함
정규화
- 데이터 분포의 모양을 변경
UNIT 2-3 결측치 처리
결측치
결측치란 오류로 인해 데이터가 깨지거나, 잘못 수집되거나, 비어있는 값을 말한다.
처리 방법 == 매우 경험적
1. 모두 제거하기
1) List-wise 삭제 - row 단위로 데이터를 삭제
2) Pair-wise 삭제 - 해당하는 단일 값만 삭제(하지만, 자주 쓰지 않는다.)
2. 채우기(Imputation)
1. 평균값/중간값/특정값
2. 샘플링 - 분포를 통해
3. 예측값 - 학습을 통해
결측치 예제
누락돈 이유를 파악하는것 = 직관
Case1. 값이 존재하지 않기에 누락된 경우
-> 결측치를 그대로 두기(필요시 해당 row를 제거하기)
ex) 자녀가 없는 사람의 자녀의 성별
Case2. 값이 기록되지 않아 누락된 경우
-> 채우기
Case3. 값이 누락된 이유를 파악할 필요가 없는 경우, 급한 경우
-> 삭제
Tip)
데이터 분석: 결측치를 어떻게 넣을지 고민하는 것이 좋다.
머신러닝 예측 모델: 결측치가 없는 데이터 셋을 찾는것이 좋다.
fillna()를 통해 대체 가능하다.
fillna() 안에 method='bfill' : 이후 데이터를 넣어준다.(시계열 데이터 같은 경우에 좋음)
UNIT 2-4 날짜 및 시간변수 처리
날짜 및 시간 형식
UNIT 2-5 이미지 데이터 처리
RGB color space
pixel
PIL vs CV2
github를 통해 확인
GitHub - carpe1997/TIL
Contribute to carpe1997/TIL development by creating an account on GitHub.
github.com
'빅데이터 관련 자료 > Machine Learning' 카테고리의 다른 글
머신러닝 데이터 분석 6회차 (0) | 2021.09.29 |
---|---|
머신러닝 데이터 분석 5회차 (0) | 2021.09.27 |
머신러닝 데이터 분석 4회차 (0) | 2021.09.17 |
머신러닝 데이터 분석 3회차 (0) | 2021.09.13 |
머신러닝 데이터 분석 1회차 (0) | 2021.09.07 |