콘텐츠로 이동
Data Prep
상세

Data Prep Tool

CSV/XLSX 파일의 전처리를 웹 기반 GUI로 수행하는 도구


개요

항목 내용
URL https://dataprep.eommydocs.com
호스팅 맥미니 자체 호스팅 (Cloudflare Tunnel)
앱 위치 ~/apps/data-prep-tool/
HuggingFace gheom24/data-prep-tool
기술 스택 Python, Streamlit
제한 파일 1GB (권장 300MB), 6GB RAM

기능

1. 데이터 프로파일링

기능 설명
기본 통계 행/열 수, 데이터 타입, 기술통계
결측치 현황 컬럼별 결측 비율, 패턴 시각화
분포 확인 히스토그램, 박스플롯
상관관계 상관 매트릭스, 히트맵

2. 결측치 처리

방법 설명 적합 상황
삭제 행/열 단위 삭제 결측 비율 낮을 때
평균/중앙값 수치형 대체 MCAR 가정
최빈값 범주형 대체 범주형 변수
보간 선형/시계열 보간 시계열 데이터
KNN 유사 데이터 기반 대체 복잡한 패턴

3. 이상치 처리

방법 설명
IQR Q1 - 1.5IQR ~ Q3 + 1.5IQR
Z-score 평균에서 3 표준편차 이상
Winsorize 극단값을 백분위수로 대체
시각적 탐색 산점도, 박스플롯으로 확인

4. 인코딩

방법 적합 상황
Label Encoding 순서형 범주
One-Hot 명목형 (카디널리티 낮음)
Target Encoding 카디널리티 높은 범주
Frequency Encoding 빈도 기반

5. 스케일링

방법 수식 적합 상황
StandardScaler (x-mean)/std 정규분포 가정
MinMaxScaler (x-min)/(max-min) 범위 제한 필요
RobustScaler (x-median)/IQR 이상치 존재
Log Transform log(x+1) 왜도 큰 분포

6. 파생변수 생성

기능 설명
수학 연산 컬럼 간 사칙연산
날짜 파생 요일, 월, 분기, 경과일
텍스트 파생 길이, 단어수, 패턴 추출
구간화 연속형 → 범주형 (Binning)

아키텍처

[사용자 브라우저]
    |
    v
[Cloudflare Tunnel]
    |
    v
[맥미니: Streamlit App]
    |--- 파일 업로드 (임시 저장)
    |--- Pandas 기반 처리
    |--- 결과 다운로드
    v
[메모리: 6GB 할당]

인프라

LaunchAgents

파일 용도
com.eommydocs.dataprep.plist Streamlit 앱 자동 시작
com.cloudflare.tunnel.dataprep.plist Cloudflare Tunnel 자동 시작

모니터링

# 앱 상태 확인
launchctl list | grep dataprep

# 로그 확인
tail -f ~/apps/data-prep-tool/logs/app.log

# Tunnel 상태
cloudflared tunnel info dataprep

개발 이력

날짜 내용
2026-02-22 초기 배포 (프로파일링, 결측치, 이상치)
2026-02-22 Cloudflare Tunnel 설정
2026-02-22 HuggingFace Space 미러링

향후 계획

  • [ ] 대용량 파일 지원 개선 (Dask 기반)
  • [ ] 전처리 파이프라인 저장/재사용
  • [ ] 자동 EDA 리포트 생성
  • [ ] API 엔드포인트 추가

최종 업데이트: 2026-03-18