제1절 원천 자료
| 자료 | 내용 | 기간 | 출처 |
|---|---|---|---|
| 국민계정 경제활동별 실질부가가치 | 36개 산업, 분기, 계절조정, 2020년 연쇄가격 | 2000년 1분기–2025년 4분기(104분기) | 한국은행 ECOS |
| 산업연관표 | 실측표·연장표의 산업·상품별 산출과 중간투입 | 1960–2023년 | 한국은행 |
| BOKDPM 관측변수 | 산출·물가·금리·환율·실업·해외변수 등 20개 | 2000–2025년 | ECOS, FRED |
| 신산업 보조지표 | 광공업동태조사, 전력통계 등 | 연도별 | 통계청, 한국전력 등 |
제2절 연쇄가중 실질값과 가법성
한국은행의 실질부가가치는 연쇄가중 방식으로 작성된다. 해마다 직전 연도 가격을 가중치로 쓰므로 상대가격 변화가 큰 산업의 성장이 과장되지 않지만, 산업별 실질값을 더해도 공표 실질 총량과 정확히 같지 않다(비가법성). 36개 산업 실질값의 단순 합은 공표 총부가가치와 분기 평균 7.65%(절대값) 차이가 난다. 본 연구는 전기 명목 비중을 가중치로 산업별 증가율을 연쇄 연결하는 재현 방식(2020년 1분기 기준)으로 이 차이를 평균 0.23%로 줄였다. 그래도 남는 차이는 5장의 정합화 단계에서 다룬다.
제3절 36개에서 62개로
한국고용정보원 인력수급 분류(62개)는 제조업을 상품 성격에 따라 더 잘게 나누고 서비스업의 인력 밀집 부문(보건·복지·정보·금융서비스)을 분리한다. 36개 산업 값을 62개로 나눌 때는 2020년 산업연관표의 부가가치 비중을 고정 비율로 써서 배분하였다. 62개 가운데 47개는 상위 산업을 나누어 만들고 15개는 상위 산업과 일대일로 대응하며, 하위 산업의 합은 상위 산업과 정확히 같다. 62개 산업과 한국은행 36개, 한국표준산업분류(KSIC), 산업연관표 분류의 대응은 산업분류 대조표에 정리하였다.
제4절 62개에서 69개로 — 신산업 분화
반도체, 이차전지, 신재생에너지, 조선, 철강, 택배, 건설(건물건설·토목건설) 7개 분야를 모산업에서 떼어내 69개 분류를 만들었다. 분화 비중은 2020년 산업연관표의 상품 단위 부가가치로 정하되, 최근 비중이 빠르게 바뀐 이차전지와 신재생에너지는 시간에 따라 변하는 비중을 썼다. 이차전지는 광업·제조업 생산지수(전지 품목)를, 신재생에너지는 전력통계의 신재생 발전 비중을 기준 지표로 삼았다. 분화 산업과 나머지 모산업의 합은 원래 모산업 값과 같다. 분화 대상 7개 분야는 산업 분화 제안 페이지의 설계를 따르며, 36→69 매칭 방법 설명 페이지는 초기 설계(연도별 비중·8개 분화)를 설명하므로 이 장의 방법과 다르다.
제5절 월별 분할
69개 산업의 월별 실질부가가치는 상태공간모형으로 만들었다. 월별 값을 상태로, 분기 값을 관측으로 두고 '세 달의 합 = 분기 값'이라는 관측방정식과 월별 보조지표를 함께 써서 월별 경로를 추정하였다. 월별 자료는 산업 동향을 빠르게 살피는 보조 자료이며, 전망은 분기 자료로 한다. 월별 패널은 전망에 쓰지 않고 별도의 70개 산업 분류와 추가 월별 지표를 쓰므로 이 장의 재현 패키지 범위에서 제외하였다.
제6절 거시 관측변수의 재수집
BOKDPM의 관측 20변수를 2000–2025년 전 구간 하나의 원천(ECOS·FRED)으로 다시 받고, 원 모형 자료(2000–2009)와 겹치는 구간을 변수별로 대조하였다. 대부분 연속으로 이어졌고, 정의가 바뀐 일부 변수는 수준 차이를 확인해 원천을 맞추었다. 대조 결과는 관측 20변수 검증 페이지에 있다.
자세히 보기
이 장에 속한 포털 페이지 13개
구축 과정 8개



데이터 뷰어 5개
재현 패키지
한국은행 36개 산업 분기 실질부가가치를 2020년 산업연관표 비중으로 62개 산업에 배분하고 7개 신산업을 분화해 69개 산업 패널을 만들며, 36개 산업 실질값으로 연쇄가중 총부가가치를 재현해 공표 패널·수치 47개 항목을 대조한다.
필요한 것: 기본 실행은 인증키·인터넷 불필요(스냅샷 사용) · 원천 재수집(ONLINE=1) 시 API_KEY_BOK·API_KEY_KOSIS 환경변수
R 사용: R은 쓰지 않는다. 비중 배분·비율 지표·연쇄지수·행렬 집계는 pandas·numpy로 충분하다.
실행: pip install -r requirements.txt 후 python run_all.py. 마지막 노트북의 검증 셀이 원고 수치와 대조하며, 다르면 실행이 멈춘다.
입수
분석
묶음 파일 51개와 SHA-256
| 01_입수.ipynb | 95b1f22eea36e6db… |
| 02_분석.ipynb | 8d864ec42d61df12… |
| 03_결과.ipynb | 7eac65b9d62f7491… |
| README.md | a8d49a1505d9b40c… |
| config.py | b531c6312e15e342… |
| data/carveout_rules.csv | 59b7fb2688cec105… |
| data/crosswalk_62.json | 09c137303ab59970… |
| data/inputs/PROVENANCE.md | 0fbb70b81ed94713… |
| data/inputs/bok36_va_q.csv | be93329c14b1ea65… |
| data/inputs/gdp_quarterly_sa.csv | 3adbc832b93488c3… |
| data/inputs/gva_total_q.csv | 4087e14e8d461c59… |
| data/inputs/io_M_mid_2020.csv | af8a6514e0ddd90c… |
| data/inputs/io_benchmark_va_83ind.csv | 24a07dfdbc388f6e… |
| data/inputs/io_small_37x_va.csv | 46f72bff6388a9ee… |
| data/inputs/mfg_prod_c28_c282.csv | 1af50c079edd888e… |
| data/inputs/power_gen_kepco.csv | 81fb52b2499a2ce3… |
| data/inputs/power_gen_kpx.csv | 4c05ae3809eb8879… |
| data/published/io_linkage_62.csv | 3f747a97c3804541… |
| data/published/io_linkage_69.csv | 1f57d01c6867b456… |
| data/published/levels_62.csv | 00469e892aac4742… |
| data/published/levels_69.csv | c8a5adcedfa4635c… |
| data/published/levels_agg.csv | f04021ff282e5387… |
| data/published/mapping_62_official.csv | 3a60e4c94ee6c8f8… |
| data/published/recon_viewer.csv | 73ffef2411f2b67b… |
| data/published/renew_gen_actual.csv | 6d0010f538ae7b2c… |
| data/published/share_battery.csv | 65bce5c8d813630a… |
| data/published/share_renew.csv | efcde63b604815e1… |
| output/carve_log.csv | 1258ad25131c328b… |
| output/fig1_shares.png | 138f3523a54e880f… |
| output/fig2_recon.png | b0e8d93a25e881d1… |
| output/io_linkage_62.csv | 3f747a97c3804541… |
| output/io_linkage_69.csv | 1f57d01c6867b456… |
| output/levels_62.csv | 29bd526665dbc6c7… |
| output/levels_69.csv | 0995ea576b16f783… |
| output/levels_agg.csv | f04021ff282e5387… |
| output/mapping_62_official.csv | 3a60e4c94ee6c8f8… |
| output/recon_total_a.csv | 4e4aaef969e6f7fc… |
| output/recon_total_q.csv | 38f35453088f9b22… |
| output/renew_gen_actual.csv | 6d0010f538ae7b2c… |
| output/run_log.txt | 98d495f93052c2d3… |
| output/share_battery.csv | 65bce5c8d813630a… |
| output/share_renew.csv | efcde63b604815e1… |
| output/table1_panels.csv | ca0247da82c75576… |
| output/table2_split_62.csv | 41916aa48742de73… |
| output/table3_carveout_69.csv | 8e7e253aa4ab1014… |
| output/table4_timevarying_shares.csv | 97abd1a2e11eb9eb… |
| output/table5_recon.csv | 34fe2ad34429c8c3… |
| output/verification.csv | bc4293f21950fe40… |
| requirements.txt | 11067f3a759520b3… |
| run_all.py | 2a5dbd80df3b2248… |
| src/gva_data.py | 89b9ccce9ca7f93e… |