한국은행 경제통계 데이터 조회하기
파이썬 PublicDataReader 라이브러리를 이용하면 한국은행에서 제공하는 경제통계 데이터를 쉽게 조회할 수 있습니다.
PublicDataReader
PublicDataReader는 공공 데이터를 자동으로 조회할 수 있는 파이썬 라이브러리입니다. 이 라이브러리로 공공데이터포털과 국가통계포털(KOSIS)과 같이 오픈 API 서비스로 제공하는 공공 데이터를 쉽게 조회할 수 있습니다. 인증키가 필요한 공공 데이터는 인증키를 사용하여 조회할 수 있고, 인증키가 필요하지 않은 데이터는 별도의 인증 절차 없이 조회할 수 있습니다. PublicDataReader를 이용하면 일반적인 공공 데이터 조회 과정에서 필요한 API 명세 찾기, 요청 작성, 반환된 데이터 정리 과정을 자동으로 처리할 수 있고, 웹에 공개된 데이터를 조회할 때도 데이터 수집과 가공 과정을 자동화할 수 있습니다. 이를 통해 코드 작성이 간결해지고 공공 데이터 조회 작업이 편리해집니다.
ECOS 한국은행 경제통계 오픈 API 신청하기
한국은행에서 제공하는 경제통계 오픈 API 서비스를 이용하려면 인증키가 필요합니다. 인증키를 얻기 위해서는 한국은행 Open API 서비스에 회원가입해야 합니다. 가입과 동시에 인증키가 자동으로 부여되며 일반적으로 1일 이내에 API 호출이 가능합니다.
API 목록
서비스 통계 목록
입력 명세
항목명 |
설명 |
샘플데이터 |
항목구분 |
통계표코드 |
통계표코드 |
102Y004 |
선택 |
translate |
국문 컬럼명 여부 (기본값: True) |
True |
선택 |
출력 명세
항목명(국문) |
항목명(영문) |
항목설명 |
샘플데이터 |
상위통계표코드 |
P_STAT_CODE |
상위통계표코드 |
442 |
통계표코드 |
STAT_CODE |
통계표코드 |
102Y004 |
통계명 |
STAT_NAME |
통계명 |
1.1.1.1.2. 본원통화 구성내역(평잔, 원계열) |
주기 |
CYCLE |
주기(년, 분기, 월) |
M |
검색가능여부 |
SRCH_YN |
검색가능여부 |
Y |
출처 |
ORG_NAME |
출처 |
한국은행 |
예제
from PublicDataReader import Ecos
service_key = "API 인증키"
api = Ecos(service_key)
df = api.get_statistic_table_list()
df.head()
|
상위통계표코드 |
통계표코드 |
통계명 |
시점 |
검색가능여부 |
출처 |
0 |
* |
0000000001 |
1. 통화/금융 |
None |
N |
None |
1 |
0000000001 |
0000000002 |
1.1. 통화/유동성 |
None |
N |
None |
2 |
0000000002 |
0000000003 |
1.1.1. 본원통화 |
None |
N |
None |
3 |
0000000003 |
0000000004 |
1.1.1.1. 본원통화 구성내역 |
None |
N |
None |
4 |
0000000004 |
102Y004 |
1.1.1.1.1. 본원통화 구성내역(평잔, 계절조정계열) |
M |
Y |
None |
통계용어사전
입력 명세
항목명 |
설명 |
샘플데이터 |
항목구분 |
용어 |
용어 |
소비자동향지수 |
필수 |
translate |
국문 컬럼명 여부 (기본값: True) |
True |
선택 |
출력 명세
항목명(국문) |
항목명(영문) |
항목설명 |
샘플데이터 |
용어 |
WORD |
용어 |
소비자동향지수 |
용어설명 |
CONTENT |
용어설명 |
소비자들이 느끼는 경기, 소비지출계획, 생활형편 등 경제에 대한 전반적인 인식을 조사하여 지수화함으로써 소비 및 경기를 파악하는 지표로 활용된다. 소비자동향지수는 1964년 미국 미시간대학이 최초로 작성하였으며 그 이후 우리나라를 비롯한 세계 각국에서 편제하여 공표하고 있다. 한국은행의 소비자동향지수는 매월 초~중순에 걸쳐 조사하여 하순에 결과를 발표하고 있다. |
예제
from PublicDataReader import Ecos
service_key = "API 인증키"
api = Ecos(service_key)
df = api.get_statistic_word(용어="소비자동향지수")
df.head()
|
용어 |
용어설명 |
0 |
소비자동향지수 |
소비자들이 느끼는 경기, 소비지출계획, 생활형편 등 경제에 대한 전반적인 인식을 조... |
통계 세부항목 목록
입력 명세
항목명 |
설명 |
샘플데이터 |
항목구분 |
통계표코드 |
통계표코드 |
601Y002 |
필수 |
translate |
국문 컬럼명 여부 (기본값: True) |
True |
선택 |
출력 명세
항목명(국문) |
항목명(영문) |
항목설명 |
샘플데이터 |
통계표코드 |
STAT_CODE |
통계표코드 |
601Y002 |
통계명 |
STAT_NAME |
통계명 |
7.5.2. 지역별 소비유형별 개인 신용카드 |
항목그룹코드 |
GRP_CODE |
항목그룹코드 |
Group1 |
항목그룹명 |
GRP_NAME |
항목그룹명 |
지역코드 |
통계항목코드 |
ITEM_CODE |
통계항목코드 |
A |
통계항목명 |
ITEM_NAME |
통계항목명 |
서울 |
상위통계항목코드 |
P_ITEM_CODE |
상위통계항목코드 |
nan |
상위통계항목명 |
P_ITEM_NAME |
상위통계항목명 |
nan |
주기 |
CYCLE |
주기 |
M |
수록시작일자 |
START_TIME |
수록시작일자 |
200912 |
수록종료일자 |
END_TIME |
수록종료일자 |
202112 |
자료수 |
DATA_CNT |
자료수 |
145 |
단위 |
UNIT_NAME |
단위 |
십억원 |
가중치 |
WEIGHT |
가중치 |
nan |
예제
from PublicDataReader import Ecos
service_key = "API 인증키"
api = Ecos(service_key)
df = api.get_statistic_item_list(통계표코드="601Y002")
df.head()
|
통계표코드 |
통계명 |
항목그룹코드 |
항목그룹명 |
통계항목코드 |
통계항목명 |
상위통계항목코드 |
상위통계항목명 |
시점 |
수록시작일자 |
수록종료일자 |
자료수 |
단위 |
가중치 |
0 |
601Y002 |
7.5.2. 지역별 소비유형별 개인 신용카드 |
Group1 |
지역코드 |
A |
서울 |
None |
None |
M |
200912 |
202212 |
12874 |
None |
None |
1 |
601Y002 |
7.5.2. 지역별 소비유형별 개인 신용카드 |
Group1 |
지역코드 |
B |
부산 |
None |
None |
M |
200912 |
202212 |
12874 |
None |
None |
2 |
601Y002 |
7.5.2. 지역별 소비유형별 개인 신용카드 |
Group1 |
지역코드 |
C |
대구 |
None |
None |
M |
200912 |
202212 |
12874 |
None |
None |
3 |
601Y002 |
7.5.2. 지역별 소비유형별 개인 신용카드 |
Group1 |
지역코드 |
D |
인천 |
None |
None |
M |
200912 |
202212 |
12874 |
None |
None |
4 |
601Y002 |
7.5.2. 지역별 소비유형별 개인 신용카드 |
Group1 |
지역코드 |
E |
광주 |
None |
None |
M |
200912 |
202212 |
12874 |
None |
None |
통계 조회 조건 설정
입력 명세
항목명 |
설명 |
샘플데이터 |
항목구분 |
통계표코드 |
통계표코드 |
200Y001 |
필수 |
주기 |
주기(년:A, 반년:S, 분기:Q, 월:M, 반월:SM, 일: D) |
A |
필수 |
검색시작일자 |
검색시작일자(주기에 맞는 형식으로 입력: 2015, 2015Q1, 201501, 20150101 등) |
2015 |
필수 |
검색종료일자 |
검색종료일자(주기에 맞는 형식으로 입력: 2021, 2021Q1, 202101, 20210101 등) |
2021 |
필수 |
통계항목코드1 |
통계항목코드1 |
10101 |
선택 |
통계항목코드2 |
통계항목코드2 |
nan |
선택 |
통계항목코드3 |
통계항목코드3 |
nan |
선택 |
통계항목코드4 |
통계항목코드4 |
nan |
선택 |
translate |
국문 컬럼명 여부 (기본값: True) |
True |
선택 |
출력 명세
항목명(국문) |
항목명(영문) |
항목설명 |
샘플데이터 |
통계표코드 |
STAT_CODE |
통계표코드 |
200Y001 |
통계명 |
STAT_NAME |
통계명 |
2.1.1.1. 주요지표(연간지표) |
통계항목코드1 |
ITEM_CODE1 |
통계항목코드1 |
10101 |
통계항목명1 |
ITEM_NAME1 |
통계항목명1 |
국내총생산(명목, 원화표시) |
통계항목코드2 |
ITEM_CODE2 |
통계항목코드2 |
nan |
통계항목명2 |
ITEM_NAME2 |
통계항목명2 |
nan |
통계항목코드3 |
ITEM_CODE3 |
통계항목코드3 |
nan |
통계항목명3 |
ITEM_NAME3 |
통계항목명3 |
nan |
통계항목코드4 |
ITEM_CODE4 |
통계항목코드3 |
nan |
통계항목명4 |
ITEM_NAME4 |
통계항목명4 |
nan |
단위 |
UNIT_NAME |
단위 |
십억원 |
시점 |
TIME |
시점 |
2015 |
값 |
DATA_VALUE |
값 |
1658020.4 |
예제
from PublicDataReader import Ecos
service_key = "API 인증키"
api = Ecos(service_key)
df = api.get_statistic_search(통계표코드="200Y001", 주기="A", 검색시작일자="2015", 검색종료일자="2021")
df.head()
|
통계표코드 |
통계명 |
통계항목코드1 |
통계항목명1 |
통계항목코드2 |
통계항목명2 |
통계항목코드3 |
통계항목명3 |
통계항목코드4 |
통계항목명4 |
단위 |
시점 |
값 |
0 |
200Y001 |
2.1.1.1. 주요지표(연간지표) |
3010101 |
민간 |
None |
None |
None |
None |
None |
None |
% |
2015 |
2.2 |
1 |
200Y001 |
2.1.1.1. 주요지표(연간지표) |
7010106 |
가계 |
None |
None |
None |
None |
None |
None |
% |
2015 |
55.8 |
2 |
200Y001 |
2.1.1.1. 주요지표(연간지표) |
7010107 |
기업 |
None |
None |
None |
None |
None |
None |
% |
2015 |
22.5 |
3 |
200Y001 |
2.1.1.1. 주요지표(연간지표) |
7010108 |
정부 |
None |
None |
None |
None |
None |
None |
% |
2015 |
21.7 |
4 |
200Y001 |
2.1.1.1. 주요지표(연간지표) |
70105 |
총조정처분가능소득의분배 |
None |
None |
None |
None |
None |
None |
None |
2015 |
None |
100대 통계지표
입력 명세
항목명 |
설명 |
샘플데이터 |
항목구분 |
translate |
국문 컬럼명 여부 (기본값: True) |
True |
선택 |
출력 명세
항목명(국문) |
항목명(영문) |
항목설명 |
샘플데이터 |
통계그룹명 |
CLASS_NAME |
통계그룹명 |
국민소득 · 경기 · 기업경영 |
통계명 |
KEYSTAT_NAME |
통계명 |
경제성장률(전기대비) |
값 |
DATA_VALUE |
값 |
1.9 |
시점 |
CYCLE |
통계의 최근 수록 시점 |
202003 |
단위 |
UNIT_NAME |
단위 |
%, 달러, 십억원 등 |
예제
from PublicDataReader import Ecos
service_key = "API 인증키"
api = Ecos(service_key)
df = api.get_key_statistic_list()
df.head()
|
통계그룹명 |
통계명 |
값 |
시점 |
단위 |
0 |
시장금리 |
한국은행 기준금리 |
3.5 |
20230315 |
% |
1 |
시장금리 |
콜금리(익일물) |
3.439 |
20230316 |
% |
2 |
시장금리 |
KORIBOR(3개월) |
3.56 |
20230317 |
% |
3 |
시장금리 |
CD수익률(91일) |
3.62 |
20230317 |
% |
4 |
시장금리 |
통안증권수익률(364일) |
3.429 |
20230317 |
% |
통계메타DB
입력 명세
항목명 |
설명 |
샘플데이터 |
항목구분 |
데이터명 |
데이터명 |
경제심리지수 |
필수 |
translate |
국문 컬럼명 여부 (기본값: True) |
True |
선택 |
출력 명세
항목명(국문) |
항목명(영문) |
항목설명 |
샘플데이터 |
레벨 |
LVL |
레벨 |
2 |
상위통계항목코드 |
P_CONT_CODE |
부모통계항목코드 |
1 |
통계항목코드 |
CONT_CODE |
통계항목코드 |
3 |
통계항목명 |
CONT_NAME |
통계항목명 |
최초작성연도 |
메타데이터 |
META_DATA |
메타데이터 |
2012.6월 최초 작성(과거 시계열은 2003.1월부터 제공) |
예제
from PublicDataReader import Ecos
service_key = "API 인증키"
api = Ecos(service_key)
df = api.get_statistic_meta(데이터명="경제심리지수")
df.head()
|
레벨 |
상위통계항목코드 |
통계항목코드 |
통계항목명 |
메타데이터 |
0 |
2 |
0000000001 |
0000000098 |
무응답률 |
None |
1 |
2 |
0000000001 |
0000000099 |
MSE |
None |
2 |
1 |
None |
0000000100 |
예산 인력 교육 홍보 |
None |
3 |
2 |
0000000001 |
0000000101 |
관련 예산 |
None |
4 |
2 |
0000000001 |
0000000102 |
인력 |
None |
참고
댓글남기기