[무역 | Phase2] 보건용 마스크 수출입 동향 - Python pandas 기본 (3부)
제 2번 자료 2019.1~ 2020.4 완제 마스크 (HS code 6307909000)의 월별 국가별 수출입실적 데이터 가공
코딩 전문부터 보시겠습니다.
# 품목별 국가별 수출입실적 xlsx 파일을 pandas DataFrame으로 불러오기
b1 = pd.read_excel('C:\\Users\\USER\\Desktop\\example\\Trade\\품목별 국가별 수출입실적_6307909000.xlsx')
# 불필요한 1번~4번행 지우기
b2 = b1.drop(b1.index[0:3])
# 불필요한 6번행 지우고, DataFrame의 index값을 다시 부여하기
b3 = b2.drop(b1.index[4]).reset_index()
# reset_index로 부여된 index만 남기고 Series로 변경된 기존 index열 지우기
b4 = b3.drop(['index'], axis=1)
# DataFrame의 첫행으로 인식되어 있는, 열이름을 DataFrame의 Series 이름으로 재인식시키기
b5 = b4.rename(columns=b4.iloc[0])
# Series이름으로 재인식된 첫행 삭제하기
b6 = b5.drop(b5.index[0])
b6['수출금액'] = b6['수출금액'].str.replace(pat=r',', repl=r'', regex=True)
# 3 단계. 재시도.
b6['수출금액'] = b6['수출금액'].astype('float64')
# 자료형 변환 성공. '수입금액'. '무역수지'에도 적용하기.
b6['수입금액'] = b6['수입금액'].str.replace(pat=r',', repl=r'', regex=True)
b6['무역수지'] = b6['무역수지'].str.replace(pat=r',', repl=r'', regex=True)
b6['수입금액'] = b6['수입금액'].astype('float64')
b6['무역수지'] = b6['무역수지'].astype('float64')
b7 = b6[['기간','국가명','수출금액','수입금액','무역수지']]
b8 = b7.groupby(by='국가명', as_index=False).sum()
2번 자료를 열어 보시면 1번 자료와 구조에서 큰 차이가 없습니다. 단지, 국가별 수출입 실적이 집계 되어야 하기에, '국가명'이라는 열이 추가로 있을 뿐입니다.
따라서, 우리는 1번 자료를 가공하기 위해 사용한 코드를 거의 그대로 재활용 할 수 있습니다.
지난 2개 부를 통해 코드의 상세한 설명을 진행하였기 때문에, 여기서는 생략하고 이 글부터 보시게 된 분들을 위해 해당 포스팅의 링크를 남기는 것으로 대체하겠습니다.
링크 : [무역 | Phase2] 보건용 마스크 수출입 동향 - Python coding (1부)
링크 : [무역 | Phase2] 보건용 마스크 수출입 동향 - Python coding (2부)
대신 추가된 코드만 좀 살펴 보겠습니다.
b7 DataFrame은 원 데이터에 포함된 모든 열을 사용할 것이 아니기 때문에, 필요한 열만 추출해 새로운 DataFrame을 생성한 것입니다.
b8 DataFrame은 groupby()를 사용하여 '국가명'을 기준으로 그 합계를 집계하도록 했습니다.
b8을 통해서 국가별로 얼마나 많은 수출입 실적이 발생했는지 집계하려고 합니다.
b8의 실행결과를 pycharm 터미널로 확인해 보면 아래와 같습니다.
pd.to_excel(). 통계에 사용된 데이터 근거 남기기
이제 시각화에 필요한 통계 자료 정리가 끝이 났습니다. 시각화는 곧 보고서 작성을 의미합니다. 보고서를 통해 상사 또는 대중에게 결과물을 공유하는 것인데요. 언제나 그렇듯, 시각화에 사용된 통계 근거는 남겨야 하겠습니다.
엑셀파일 형태의 raw data로부터 refining&trimming이 끝난 DataFrame을 pandas의 to_excel() 을 이용하여 이제 그 근거를 xlsx파일로 남기도록 하겠습니다.
a6.to_excel('C:\\Users\\USER\\Desktop\\example\\Trade\\a6_6307909000.xlsx', sheet_name="sheet1")
b8.to_excel('C:\\Users\\USER\\Desktop\\example\\Trade\\b8_6307909000.xlsx', sheet_name="sheet1")
실행하면 지정한 경로에 두 파일 모두 잘 생성된 것이 확인 됩니다.
이제 Phase3로 이동하여 가공한 data들을 시각화해보고, 데이터가 주는 의미와 추가적인 활용점이 없는지 살펴보도록 하겠습니다.
Phase3도 계속 구독 부탁 드립니다.
NPU(엔피유) 관세사무소
대표관세사 고장주
Tel) 031-986-7190
E-mail) sales@npucus.com
[NPU관세사무소 프로모션 페이지] https://www.tradenpu.com/npu_cus/
[무역비지니스 인텔리전스 서비스 | TradeNPU] https://www.tradenpu.com
[파이썬 실용 예제. 무역과 공공데이터] https://pdatinmylife.tistory.com
Certified Customs Broker JangJu Goh
Executive Customs Broker @ NPU Customs Consulting
CEO @ JG TradePlus
sales@npucus.com
Trade Compliance / Customs clearance management at foreign company
Working experience of Air export freight forwarding
Data Visualization / Independent development of business automation application – copyright of JGPO_Manager, JG Data Center, AutoCC and etc.
B2B consignment & direct export/import, B2C Overseas Buying Office consulting
Alibaba.com B2B trade / taobao B2C trade / Amazon.com global selling etc. Online trade regulation consulting.
Import license / Quarantine
English communication available
[TradeNPU for partnership proposal - JGTP] https://www.tradenpu.com/jgtp/
'파이썬(Python) > 코로나와 보건용 마스크 수출입 실적 변동' 카테고리의 다른 글
[무역 | Phase3] 보건용 마스크 원재료 (부직포) 수출입 동향 - matplotlib (1) | 2020.06.16 |
---|---|
[무역 | Phase3] 보건용 마스크 수출입 동향 - Visualization / matplotlib (0) | 2020.06.15 |
[무역 | Phase2] 보건용 마스크 수출입 동향 - Python pandas 기본 (2부) (0) | 2020.06.15 |
[무역 | Phase2] 보건용 마스크 수출입 동향 - Python pandas 기본 (1부) (1) | 2020.06.15 |
[무역 | Phase1] 보건용 마스크 수출입 동향 - 공공데이터포털 데이터수집 (2부) (0) | 2020.06.15 |