Data Story

데이터 사이언스, 쉽게 설명하기

Preprocessing 3

Z-Score를 사용하기 전에 알아둬야할 것

Outlier을 제거하는 것은 모델의 Performance 상승에 기여한다고 알고 있다. 하지만, 이 이상치를 제거하는 것이 꼭 타당한 방법일까? Outlier Detection 방법 중 하나인 Z-score에 대해 알아보자. 그 전에, Outlier을 제거하면 어떤 장점이 있을까? 1. Improve Model Performance : Training Dataset, Valid Dataset의 Performance가 상승하는 것을 볼 수 있다. 그러나, 경험상, Test set에서는 항상 상승하는 것은 아니다. 2. Enhance Robustness : 극값으로 인해, 평균과 분산이 흔들리게 되는데 이 극값, 즉 이상치를 제거함으로써 새로운 데이터셋에 극값이 있어도 쉽게 흔들리지 않는다. (Robust..

Preprocessing - [Process missing values]

Preprocessing - [Process missing values] 데이터를 열어보면 결측값이 있을 때가 많다. 결측값을 처리해야할 때 다앙한 방법들이 있다. (비어 있는 부분이 결측값) 결측값을 처리하는 방법들 결측값이 있는 행 지우기 결측값이 많은 열 지우기 평균이나 중위값으로 간단히 통계 처리(결측값이 랜덤으로 분포된 경우에 사용) 다중대체법(Multiple imputation) Python 라이브러리, ```facnyimpute``` https://github.com/iskandr/fancyimpute Maximum likelihood estimator https://www.kaggle.com/code/residentmario/simple-techniques-for-missing-data-i..

Preprocessing 2023.01.25

Preprocessing - [Large Datasets processing]

Large Datasets processing 대용량 데이터에 Pandas를 사용하면 성능이 떨어진다. Pandas 라이브러리는 메모리 내에서 분석을 수행하기 때문에 데이터셋이 메모리보다 크면 Pandas를 사용하기 어렵다. 또한, 단일 CPU 코어를 사용하기 때문에 매우 큰 데이터셋에서 Hadoop과 같은 병렬 분산 처리 컴퓨팅 도구보다 느리다. 물론, Dask, Modin과 같은 도구나 라이브러리로 처리하면 된다. 대용량 데이터셋에 Pandas를 쓰기 위해서는 아래와 같은 방법이 있다. 1. usecols usecols 인자를 사용하면 전체 데이터셋을 사용하는 것보다 훨씬 빠르다. import pandas as pd cols = ["X1" , "X2" , "X3" , "X4" , "X5"] df = ..

Preprocessing 2023.01.04