표 데이터의 오류 찾기

1. 연습 데이터 만들기

표 분석을 AI에 맡겨도 원자료와 계산 결과를 사람이 다시 확인해야 한다. AI가 빈값을 0으로 바꾸거나 이상값을 오류로 단정하면 실제 기록이 손상될 수 있다.

CSV는 쉼표로 표의 열을 구분해 저장하는 텍스트 파일이다. 스프레드시트 프로그램과 일반 텍스트 편집기에서 열 수 있지만, 저장 형식이 바뀌면 한글이나 열 구분이 깨질 수 있다.

1.1 CSV 파일 작성하기

  1. "ai_prompt" 폴더에 "13_수강현황.csv"를 만든다.
  2. 메모장으로 파일을 연다.
  3. 다음 내용을 그대로 입력한다.
id,name,course,hours
1,김하나,파이썬,18
2,이준호,HTML,15
3,박서연,파이썬,
3,박서연,파이썬,
5,최민지,HTML,150
6,,파이썬,12
  1. Ctrl+S로 저장한다.
  2. AI 서비스에 파일을 첨부한다.

[!INFO]
저장 후 파일 이름이 13_수강현황.csv.txt가 아닌지 확인한다. 메모장에서 저장 형식을 선택할 수 있으면 모든 파일을 선택하고 UTF-8로 저장한다.

2. 데이터 구조 확인하기

2.1 바로 수정하지 않고 진단하기

  1. 다음 요청문을 입력한다.
첨부 CSV를 수정하지 않고 진단한다.

다음 항목을 표로 작성한다.
- 열 이름
- 데이터 형식
- 빈값 수
- 중복 가능성
- 이상값 가능성

판단 근거가 되는 행 번호를 표시한다.
행 번호는 파일 줄 번호 기준이며 헤더가 1행이다.
  1. 다음 문제가 모두 표시되었는지 확인한다.
    1. hours 빈값
    2. id=3 중복
    3. hours=150 이상값 가능성
    4. 이름 빈값

3. 수정 규칙 정하기

3.1 AI가 임의로 고치지 못하게 하기

  1. 다음 규칙을 "13_데이터점검.txt"에 저장한다.
중복: 모든 값이 같은 행은 한 행만 남긴다.
빈 이름: 삭제하지 않고 확인 필요로 표시한다.
빈 시간: 0으로 바꾸지 않고 확인 필요로 표시한다.
150시간: 오류로 단정하지 않고 원자료 확인 대상으로 표시한다.
  1. 다음 요청문을 입력한다.
아래 수정 규칙을 적용한 정리안을 만든다.
원본 파일은 변경하지 않는다.

<수정 규칙>
[수정 규칙을 붙여 넣는다]
</수정 규칙>

출력:
1. 변경 대상 행
2. 적용할 규칙
3. 변경 후 값
4. 사람이 확인할 항목

4. 계산 결과 확인하기

4.1 확정된 값만 합계 내기

  1. 다음 요청문을 입력한다.
확정된 hours 값만 사용한다.
빈값과 150은 합계에서 제외한다.
중복 행은 한 번만 계산한다.
과정별 확정 시간 합계와 제외한 행을 함께 표시한다.
  1. 원자료에서 직접 계산한다.
파이썬: 18 + 12 = 30
HTML: 15
  1. AI 결과와 직접 계산 결과를 비교한다.
  2. 다르면 계산에 포함한 행을 다시 요청한다.

[!NOTE]

  1. 이상값은 크다는 이유만으로 삭제하지 않는다.
  2. 빈값을 0으로 바꾸면 실제 미입력과 0시간을 구분할 수 없다.

5. 오류가 생겼을 때

5.1 AI가 빈값을 임의로 채운 경우

  1. 채운 값을 제거한다.
  2. 다음 문장을 입력한다.
빈값을 추정하지 않는다.
값이 없으면 null로 유지하고 확인 필요 이유를 적는다.

5.2 중복 기준이 잘못된 경우

  1. id만 같은지 모든 열이 같은지 확인한다.
  2. 다음 문장으로 기준을 명시한다.
모든 열의 값이 같은 행만 완전 중복으로 처리한다.
id만 같은 행은 충돌 가능성으로 분리한다.

6. 직접 작성하기

  1. 10행 이상의 CSV 파일을 준비한다.
  2. 빈값, 중복, 이상값을 확인한다.
  3. 수정 규칙을 먼저 작성한다.
  4. 원본을 보존하고 정리안을 만든다.
  5. 계산 한 개 이상을 직접 재검산한다.

7. 예상 결과와 맞춰보기

문제 | 행 | 처리
hours 빈값 | 4, 5 | 확인 필요로 유지
완전 중복 | 4, 5 | 한 행만 남기는 정리안 제시
hours 150 | 6 | 이상값 가능성, 원자료 확인
name 빈값 | 7 | 삭제하지 않고 확인 필요

확정 합계: 파이썬 30시간, HTML 15시간

오류를 임의로 고치지 않고 행 위치와 확인 방법을 표시하면 정상이다.

8. 살펴보기

  • 원본 CSV를 수정하지 않았는가
  • 빈값·중복·이상값의 행을 표시했는가
  • 빈값을 0으로 바꾸지 않았는가
  • 이상값을 오류로 단정하지 않았는가
  • 합계를 직접 재검산했는가

9. 적용 전 확인

  • 원본 파일은 그대로 보관하고 정리본을 따로 만든다.
  • 빈값, 중복, 이상값 기준이 실제 업무 기준과 맞는지 확인한다.
  • CSV 저장 후 파일명이 .csv.txt로 바뀐지 않았는지 확인한다.

막히면 — AI 코치에게 묻기

이 문서에서 익힌 표 데이터의 오류 찾기를 내 상황에 적용하다 막히면, 아래를 대화형 AI(ChatGPT·Claude·Gemini)에 붙여 넣어 실습 코치로 삼는다. 답을 한꺼번에 받지 말고 한 단계씩 풀어 간다.

너는 표 데이터 점검 실습 코치다. 나는 CSV를 수정하지 않고 빈값·중복·이상값을 진단하고, 수정 규칙을 먼저 정한 뒤 원본은 보존한 채 정리안을 만들고, 확정된 값만으로 합계를 직접 재검산하는 법을 배웠고, 내 표 파일 하나로 진단 결과와 정리안을 직접 완성하려 한다. 답을 통째로 주지 말고 한 단계씩 물어 내가 직접 하게 한다.

[코칭 방식]
1. 먼저 내가 지금까지 한 것과 막힌 지점을 묻는다.
2. 막힌 원인을 한 가지 짚어 준다. 완성된 정리안·합계를 통째로 주지 않는다.
3. 다음 한 단계만 제시하고, 내가 해 본 결과를 말하면 확인 질문을 던진다.
4. 마지막에 빈값을 0으로 바꾸지 않았는지, 이상값을 오류로 단정하지 않았는지, 합계를 직접 재검산했는지 점검 질문을 한다.

[내 상황]
- 지금까지 한 것: {한것}
- 막힌 지점·메시지: {막힌점}
- 내 소재: {소재}

준비됐으면 "지금 표의 어떤 열에서 어떤 문제를 찾았나?"라고만 답한다.
  1. {한것} — 지금까지 진행한 단계, 예: CSV를 진단해 빈값과 중복 행을 행 번호로 표시하고 수정 규칙을 적었다.
  2. {막힌점} — 막힌 부분이나 받은 메시지, 예: AI가 빈 시간을 임의로 0으로 채우고 큰 값을 오류로 단정해 삭제한다.
  3. {소재} — 적용할 내 자료·주제, 예: 수강 현황 CSV(id·이름·과정·시간)의 빈값과 중복 점검.

위 변수를 실제 값으로 채운 완성 예시는 다음과 같다.

너는 표 데이터 점검 실습 코치다. 나는 CSV를 수정하지 않고 빈값·중복·이상값을 진단하고, 수정 규칙을 먼저 정한 뒤 원본은 보존한 채 정리안을 만들고, 확정된 값만으로 합계를 직접 재검산하는 법을 배웠고, 내 표 파일 하나로 진단 결과와 정리안을 직접 완성하려 한다. 답을 통째로 주지 말고 한 단계씩 물어 내가 직접 하게 한다.

[코칭 방식]
1. 먼저 내가 지금까지 한 것과 막힌 지점을 묻는다.
2. 막힌 원인을 한 가지 짚어 준다. 완성된 정리안·합계를 통째로 주지 않는다.
3. 다음 한 단계만 제시하고, 내가 해 본 결과를 말하면 확인 질문을 던진다.
4. 마지막에 빈값을 0으로 바꾸지 않았는지, 이상값을 오류로 단정하지 않았는지, 합계를 직접 재검산했는지 점검 질문을 한다.

[내 상황]
- 지금까지 한 것: CSV를 진단해 빈값과 중복 행을 행 번호로 표시하고 수정 규칙을 적었다.
- 막힌 지점·메시지: AI가 빈 시간을 임의로 0으로 채우고 큰 값을 오류로 단정해 삭제한다.
- 내 소재: 수강 현황 CSV(id·이름·과정·시간)의 빈값과 중복 점검.

준비됐으면 "지금 표의 어떤 열에서 어떤 문제를 찾았나?"라고만 답한다.

[!TIP]

  1. 코치가 답을 통째로 주려 하면 "한 단계씩 물어라"라고 다시 요청한다.
  2. 내 상황을 적을 때 원본 파일을 따로 보관했는지와 빈값·중복·이상값의 처리 기준을 빠뜨리지 않는다.

댓글 남기기