단원 홈
2단원 · 2차시

데이터를 씻고 다듬다
전처리·정규화·시각화

갓 모은 데이터는 '날것'이에요 — 빈칸도, 엉뚱한 값도, 제각각인 단위도 섞여 있죠. 분석하기 좋게 씻고(전처리), 단위를 맞추고(정규화), 한눈에 보이게(시각화) 다듬는 법을 배웁니다.

성취기준 12데과02-02
이상치·결측치정규화시각화
🎯 학습 목표
  • 이상치와 결측치를 탐색하고 적절히 처리할 수 있다.
  • 정규화가 필요한 이유를 이해하고 그 의미를 설명할 수 있다.
  • 분석 목적에 맞는 시각화(그래프)를 선택할 수 있다.
🤔

생각 열기 — 데이터 과학자는 '데이터 청소부'

많은 숫자와 표로 가득한 데이터 작업 화면
현실의 데이터는 빈칸·오타·엉뚱한 값으로 가득하다. 분석 전에 깨끗이 손질하는 일이 데이터 과학의 큰 부분을 차지한다. 사진: Umulhidayah, CC BY-SA 4.0, Wikimedia Commons

많은 데이터 과학자가 "일하는 시간의 절반 이상을 데이터 청소(전처리)에 쓴다"고 말해요. 화려한 분석·인공지능 모델은 마지막 단계일 뿐, 그 전에 지저분한 데이터를 깨끗하게 만드는 고된 작업이 있죠. 왜냐고요? 1단원에서 봤듯, 데이터 하나만 잘못돼도(예: 키 985cm) 분석 전체가 망가지니까요. 이번 시간엔 데이터를 분석 가능한 상태로 만드는 '손질의 기술'을 익혀 봅시다.

💬 함께 생각해 보기

설문지를 걷었는데, 어떤 칸은 비어 있고(무응답), 어떤 사람은 나이에 '200'을 적었어요. 이 데이터를 그냥 평균 내면 어떻게 될까요? 빈칸과 200은 각각 어떻게 처리하면 좋을까요?

1

빈칸과 엉뚱한 값 — 결측치와 이상치

🕳️ 결측치 (missing value)

값이 비어 있는 것(무응답, 측정 실패). 처리: ① 그 행을 삭제하거나 ② 평균·중앙값·최빈값 등으로 채워(대체) 넣어요.

📍 이상치 (outlier)

다른 값과 동떨어진 값(키 250cm, 나이 −3). 처리: 원인을 따져 오류면 수정·제거, 진짜 값이면 살려 둬요(섣불리 지우면 안 돼요!).

⚠️ 이상치라고 무조건 지우지 말 것

모든 이상치가 오류는 아니에요. '월 매출 10배 폭등'은 입력 실수일 수도, 대박 사건일 수도 있죠. 그래서 이상치는 "왜 이런 값이 나왔지?"를 먼저 따져 보고, 명백한 오류일 때만 고치거나 빼야 해요. 진짜 중요한 발견이 이상치 속에 숨어 있을 때도 많거든요.

🧹 데이터 클리닝 실습실 INTERACTIVE

어느 반 학생 데이터예요. ① 탐색으로 문제를 찾고, ② 전처리로 깨끗하게 손질해 보세요.

이름키(cm)나이점수
[안내]먼저 [탐색]을 눌러 어디가 이상한지 찾아보세요.
2

단위를 맞추다 — 정규화

데이터의 속성들은 단위와 범위가 제각각이에요. 나이는 십 단위, 키는 백 단위, 데이터 사용량은 만 단위죠. 이대로 여러 속성을 함께 분석하면, 숫자가 큰 속성이 결과를 지배해 버려요. 그래서 모든 속성을 같은 척도(보통 0~1)로 맞추는 것을 정규화(normalization)라고 해요.

⚖️ 정규화 위젯 — 같은 출발선에 세우기 INTERACTIVE

한 학생의 세 속성이에요. 원본 값으로 보면 '데이터 사용량'이 너무 커서 나머지가 안 보이죠? 정규화를 누르면 모두 0~1로 맞춰져 공정하게 비교돼요.

[안내]원본에서는 데이터 사용량(15000)이 막대를 거의 다 차지해요. 정규화를 눌러 비교해 보세요!
🧮 min-max 정규화 공식

정규화 값 = (값 − 최솟값) ÷ (최댓값 − 최솟값). 예: 키 170cm(최솟값 150, 최댓값 190) → (170−150)÷(190−150) = 0.5. 이렇게 하면 가장 작은 값은 0, 가장 큰 값은 1이 돼요. (인공지능 기초 2단원에서 모델 학습을 위해 정규화를 배웠다면, 데이터 분석에서도 같은 원리로 쓰여요!)

3

한눈에 보이게 — 목적에 맞는 시각화

깨끗해진 데이터는 그래프로 시각화하면 패턴이 한눈에 보여요. 중요한 건 '목적에 맞는 그래프'를 고르는 것! 같은 데이터도 엉뚱한 그래프에 담으면 오히려 헷갈려요. 아래에서 분석 목적별로 어떤 그래프가 좋은지 처방받아 보세요.

값의 분포를 보여 주는 막대 모양의 히스토그램
히스토그램 — 값을 구간으로 나눠 데이터가 어떻게 퍼져 있는지(분포)를 한눈에 보여 준다. 사진: Jonahl613, CC BY-SA 4.0, Wikimedia Commons
📊 그래프 처방전 — 목적에 맞는 그래프 고르기 INTERACTIVE

알고 싶은 목적을 누르면, 가장 알맞은 그래프와 그 이유를 알려 줘요.

확인 문제

바로바로 채점!

✏️

2차시 확인 문제

4문항 · 즉시 채점

1설문에서 응답하지 않아 값이 비어 있는 칸처럼, '값이 없는' 데이터를 무엇이라 할까?

2이상치(다른 값과 동떨어진 값)를 발견했을 때 올바른 태도는?

3단위·범위가 제각각인 속성들을 같은 척도(0~1 등)로 맞추는 전처리를 무엇이라 할까?

4'최근 1년간 월별 기온 변화'를 한눈에 보여 주기에 가장 알맞은 그래프는?

더 알아보기

교과서 너머의 이야기 — 클릭해서 펼쳐 보세요

실전결측치, 지울까 채울까? — 상황에 따라 다르다

결측치 처리는 정답이 하나가 아니에요. ① 삭제: 결측이 적고 데이터가 충분하면 그 행을 지우는 게 간단해요. 하지만 결측이 많으면 데이터가 너무 줄어들죠. ② 대체(채우기): 숫자는 평균이나 중앙값으로, 범주(예: 좋아하는 색)는 최빈값으로 채워요. 더 똑똑하게는 비슷한 다른 데이터를 참고해 추정하기도 해요. 중요한 건 '왜 비어 있는지'를 생각하는 거예요. 예를 들어 '소득' 칸이 비었다면, 단순 실수일 수도 있지만 고소득자가 일부러 답을 피한 것일 수도 있어요. 그럼 그냥 평균으로 채우면 또 다른 편향이 생기죠. 데이터를 채우는 일조차 신중한 판단이 필요하답니다.

개념이상치를 찾는 똑똑한 방법 — 사분위수와 상자그림

"이 값이 이상치일까?"를 눈대중이 아니라 규칙으로 판단하는 방법이 있어요. 데이터를 크기순으로 줄 세워 4등분하는 사분위수를 쓰는 거예요. 가운데 50%가 들어가는 상자(Q1~Q3)를 그리고, 그 상자 폭(IQR)의 1.5배보다 더 멀리 떨어진 값을 이상치 후보로 봐요. 이걸 그림으로 나타낸 게 상자그림(박스플롯)이에요 — 상자와 수염, 그리고 점으로 찍힌 이상치를 한눈에 보여 주죠. 통계 도구나 파이썬(예: 그래프 라이브러리)으로 쉽게 그릴 수 있어, 데이터의 분포와 이상치를 동시에 살필 때 아주 유용해요. (지금은 '이런 방법이 있다'만 알면 충분해요!)

주의같은 데이터, 거짓말하는 그래프 — 시각화의 윤리

시각화는 강력한 만큼 속이기도 쉬워요(「정보」 2단원의 '거짓말하는 그래프'를 떠올려 보세요). 대표적인 수법: ① y축을 0이 아닌 데서 시작해 작은 차이를 크게 부풀리기, ② 축 간격을 들쭉날쭉하게, ③ 3D·그림으로 면적을 왜곡하기, ④ 유리한 기간만 잘라 보여 주기. 똑같은 데이터인데 그래프를 어떻게 그리느냐에 따라 "급증했다!"도, "거의 그대로다"도 만들 수 있어요. 그래서 그래프를 그릴 땐 정직하게, 그래프를 볼 땐 축과 범위를 의심해야 해요. 좋은 데이터 과학자는 화려한 그래프보다 정확하고 정직한 그래프를 그립니다.