jyamethyst21 님의 블로그
머신러닝 & 딥러닝 본문
데이터 전처리
- 정의: 데이터를 분석하거나 머신러닝 모델에 사용하기 전에 깨끗하고 유용한 상태로 준비하는 과정
- 데이터 수집 후 비어 있는 값, 엉뚱한 값, 필요 없는 값이 있으면 이를 수정하고 정리하는 과정
- 데이터 품질 및 신뢰도 향상을 위해 필수
- 과정: 데이터 수집 -> 정제 -> 변환 -> 통합
-> 수집: 필요한 데이터를 모으는 단계
-> 정제: 데이터를 깨끗하게 만드는 단계
-> 변환: 데이터를 분석/모델링에 적합하게 바꾸는 단계
-> 통합: 여러 데이터를 하나로 합치는 단계
- 전처리 주요 작업
-> 결측 값 처리: 데이터에 비어있는 값이 있을 경우 이를 해결(평균값, 중앙값으로 채우거나 데이터 삭제)
-> 오류 수정: 잘못된 데이터를 수정(나이에 음수 값이 입력된 경우 이를 제거)
-> 중복 제거: 동일한 데이터가 여러 번 나타나는 경우 삭제(중복 시 하나만 남김)
-> 이상치 제거: 너무 크거나 작은 값 등 정상적이지 않은 값을 처리(삭제 등)
- 데이터 변환: 데이터를 해석하기 쉽게 하고 모델링 과정에서 성능을 향상시키는 과정
-> 형태 변환: 데이터를 사용 목적에 맞게 바꾸기(텍스트 데이터를 숫자로 인코딩)
-> 정규화: 데이터 범위를 일정하게 조정(가격 데이터를 0~1 사이로 변환하여 비교 가능하게 만들음)
-> 집계: 데이터를 요약하거나 그룹화(일별 데이터를 월별로 집계)
-> 차원 축소: 불필요한 데이터를 제거하여 데이터 크기를 줄임(머신러닝에서 중요하지 않은 열 제거)
- 데이터 통합: 데이터가 여러 개의 테이블, 파일, 시스템에 분산되어 있을 수 있기 때문에 이를 하나로 합치는 과정
-> 데이터 병합: 두 개 이상의 데이터셋을 결합
-> 일관성 유지: 서로 다른 데이터의 포맷과 구조를 맞춤
-> 중복 제거: 통합된 데이터에서 중복된 항목 삭제
데이터 유형
- 정형 데이터: 행과 열로 구성되어 있는 잘 정리된 데이터(데이터베이스, 엑셀 파일 등)
-> 데이터가 표처럼 정렬, 각 열에 이름과 데이터 유형이 정해져 있음
- 비정형 데이터: 고정된 구조가 없는, 정리되지 않은 데이터(이미지, 동영상, 텍스트 파일)
-> 데이터의 모양이나 구조가 일정하지 않고 분석하려면 먼저 데이터를 가공해야 함
- 반정형 데이터: 정형 데이터와 비정형 데이터의 중간 단계로 데이터에 구조는 있지만, 정형 데이터처럼 엄격하지 않음(JSON, XML 등)
-> 데이터에 구조가 있지만 형태가 유연함, 사람이 읽을 수 있으며, 컴퓨터도 처리 가능
파이썬 정규표현식
- 정규 표현식: 어떤 문자열 안에서 특정한 규칙을 가진 패턴을 찾기 위한 도구(ex. 이메일 주소만 찾을 때)
- re 모듈: 파이썬의 내장 모듈로, 정규 표현식을 활용하여 문자열을 검색할 수 있음
- r'...' (raw string) 형태

- re.match(): 문자열의 처음부터 패턴이 맞는지 확인(이름이 홍길동으로 시작하는가?)
- re.search(): 문자열 전체 중에서 패턴이 있는지 확인(문자열 어디에든 숫자가 있나요?)
- re.findall(): 패턴과 일치하는 모든 값을 리스트로 반환(문장 안에 있는 모든 숫자 뽑기)
- 정규 표현식 기호


- 플래그(옵션)

- 메타 문자: 문자를 설명하기 위한 문자, 문자의 구성을 설명하기 위해 의미가 아니라 다른 의미로 쓰이는 문자
-> 기본 메타문자: [] ([] 블록 사이의 문자와 매칭, or의 의미) , 예시: [abc] = a or b or c
-> 반복 관련 메타 문자: -, +, *, ?, {}
• + : 해당 글자가 1개 이상 출현
• {} : 출현 횟수를 조정해야 할 때 사용하는 메타문자는 중괄호
• * : 해당 글자가 0번부터 무한대까지 반복
• () : 묶음을 표시 [.]는 일반적인 마침표를 뜻하고 (.)는 줄 바꿈 기호를 제외한 전체 문자를 뜻함
• 메타문자 |나 ^은 or와 not의 의미, 정규 표현식의 처음과 끝에는 메타문자 ^과 $를 붙임
• ^ : 라인의 처음이나 문자열의 처음을 표시
• $ : 라인의 끝이나 문자열의 끝 표시
• . : 임의의 한 문자 표시
• [] : 문자의 집합이나 범위를 나타냄, 두 문자 사이의 범위는 '-' 사용
• ? : '?' 직전의 선행 문자가 0번 또는 1번 나타나는 문자열
• | : or를 나타냄
• \ : 위에서 사용된 특수 문자들을 정규식 내에서 문자로 취급하고 싶을 때 '\'를 선행시켜서 사용

'보안 & IT 지식 🌺' 카테고리의 다른 글
| 머신러닝 & 딥러닝 (0) | 2026.01.12 |
|---|---|
| 머신러닝 & 딥러닝 (0) | 2026.01.09 |
| 머신러닝 & 딥러닝 (0) | 2026.01.07 |
| 파이썬 기본 문법 (0) | 2026.01.06 |
| 파이썬 기본 문법 (0) | 2026.01.05 |
