# [Codex] 흩어진 실거래가·KB통계·주식 데이터를 하나의 DuckDB에 모은 과정

# 📝 한줄 요약

코딩 경험이 많지 않아도 지역·종목·기간·검증 기준을 구체적으로 설명하면, AI와 함께 실제 데이터를 수집하고 하나의 분석용 데이터베이스로 정리할 수 있었습니다. 국토교통부 실거래가, KB부동산 통계, 삼성전자와 KODEX 200 가격을 합쳐 6개 테이블, 총 149,803행을 구축했습니다.

바쁘시면 이것만 읽어도 돼요:

- Codex와 대화하며 부동산·주식 데이터 수집 환경을 처음부터 구성했습니다.

- 노원구 아파트 실거래가, 전국 KB부동산 통계, 삼성전자·KODEX 200 가격을 하나의 DuckDB에 모았습니다.

- 전월세 API의 403 Forbidden을 가짜 데이터로 넘기지 않고 별도 활용신청 문제로 찾아냈습니다.

- 데이터를 저장한 뒤 행 수, 기간, 결측값, 중복까지 다시 확인했습니다.

- 가장 중요한 팁은 지역·종목·기간·저장 위치·검증 기준을 요청에 구체적으로 적는 것입니다.

- 다음 단계는 저장된 데이터를 이용해 분석 차트와 리포트를 자동 생성하는 것입니다.

## 🎯 이런 분들께 도움돼요

- 코딩 경험은 적지만 공공데이터를 직접 수집해보고 싶은 분

- AI 코딩 도구가 실제 데이터 업무에도 쓸 만한지 궁금한 분

- 부동산과 주식 데이터를 한곳에 모아 분석하고 싶은 분

- API 오류가 나면 어디서부터 확인해야 할지 막막한 분

## 😫 문제 상황 (Before)

이번 작업의 출발점은 단순했습니다. “AI에게 구체적으로 요청하면 비개발자도 실제 데이터를 수집하고 검증할 수 있을까?”를 직접 확인해보고 싶었습니다.

부동산 실거래가, KB부동산 통계, 주식 가격은 각각 제공처와 조회 방식이 다릅니다. 데이터를 내려받는 것만으로 끝나는 것도 아닙니다. 기간이 제대로 들어왔는지, 값이 비어 있지는 않은지, 같은 행이 중복되지는 않았는지까지 확인해야 분석에 안심하고 사용할 수 있습니다.

직접 모든 도구와 데이터 구조를 익힌 다음 시작하려 했다면 준비 단계에서 오래 멈췄을 것입니다. 대신 원하는 결과와 지켜야 할 조건을 먼저 정리해 Codex에 전달했습니다.

## 🛠️ 사용한 도구

- 도구: Codex

- 모델: Codex 기본 모델

- 데이터 수집: PublicDataReader, FinanceDataReader

- 데이터 저장: DuckDB

- 데이터 처리: pandas, Polars

- 환경 관리: uv

- 특이사항: API 키는 별도 환경 파일에 보관하고 결과나 오류 메시지에 노출하지 않도록 했습니다.

결과와 배운 점

### 분석 환경부터 안전하게 만들기

### 실거래가 수집을 요청할 때 조건을 끝까지 적기

### KB부동산 통계, 기본 호출만 믿지 않기

### 주식과 ETF도 같은 데이터베이스에 넣기

### 저장보다 중요한 재검증

## ✅ 결과 (After)

### Before vs After

| 항목 | Before | After |

|------|--------|-------|

| 데이터 위치 | 제공처별로 흩어져 있음 | 하나의 DuckDB에 통합 |

| 수집 범위 | 직접 조사하고 내려받아야 함 | 실거래가·KB통계·주식 6개 테이블 |

| 총 데이터 | 분석용 통합본 없음 | 149,803행 |

| 품질 확인 | 별도로 점검해야 함 | 행 수·기간·결측·중복 자동 검증 |

| 오류 대응 | 원인 구분이 어려움 | 실제 응답을 확인하고 실패 부분만 수정 |

| 재사용성 | 매번 절차를 다시 정리 | 수집 스크립트와 데이터 작업 규칙 보유 |

## 💬 이 과정에서 배운 AI 활용 팁

### 효과적이었던 것

1. 지역·종목·기간을 숫자로 명시하기

- “부동산 데이터를 모아줘”보다 “시군구 코드 11350, 2025년 1월부터 2026년 6월까지”가 훨씬 정확했습니다.

2. 저장 결과까지 정의하기

- 파일 위치, 테이블명, 기존 데이터 보존 여부를 함께 적으면 결과물을 다시 찾기 쉽습니다.

3. 검증 기준을 요청에 포함하기

- 행 수, 최소·최대 날짜, 결측값, 중복을 지정하니 단순 저장이 아니라 믿고 쓸 수 있는 결과가 나왔습니다.

4. 오류 처리 순서를 정하기

- 원인 설명, 수정 범위 안내, 실패한 부분만 수정, 같은 명령 재실행 순서가 효과적이었습니다.

## 🌍 다른 업무에 적용한다면?

이 방식은 부동산이나 주식에만 한정되지 않습니다.

- 정부·공공기관 통계 정기 수집

- 여러 쇼핑몰의 상품·가격 데이터 통합

- 영업·마케팅 지표를 하나의 분석 파일로 정리

- 반복 다운로드가 필요한 월간 보고서 자동화

- 여러 API에서 받은 데이터를 공통 검증 기준으로 점검

핵심은 AI에게 기술 구현만 맡기는 것이 아니라, 어떤 데이터를 어떤 범위로 모으고 어떤 조건을 통과해야 완료인지 함께 알려주는 것입니다.

## 🚀 앞으로의 계획

다음 단계는 현재 DuckDB 데이터를 바탕으로 분석 차트와 리포트를 자동 생성하는 것입니다.

- 아파트 매매·전세 거래량과 가격 흐름 시각화

- KB 가격지수와 실제 거래 흐름 비교

- 삼성전자·KODEX 200 가격 추이와 부동산 지표를 같은 기간으로 비교

- 원하는 기간과 지역을 선택하면 자동으로 갱신되는 정기 리포트 구성

- 데이터가 커질 경우 필요한 기간과 컬럼만 읽고 Parquet 기반 배치 처리 적용

지피터스 뉴스레터

이번 주 AI, 딱 쓸 것만

매주 월요일 아침,
읽고 바로 써먹을 AI 소식만