[Review] Python for Excel - 엑셀이 편해지는 파이썬


Python for Excel - 엑셀이 편해지는 파이썬

img

마침 회사에서 업무자동화를 위해 python으로 엑셀에 있는 자료를 읽어서 가공하는 프로젝트를 (머리속으로만) 기획하고 있었다. 기존에 있는 도서들은 전부 넘파이/판다스를 사용한 데이터 분석이었지만, 엑셀윙스라는 라이브러리를 사용하는 방법을 소개한다.

VBA를 배우지 않은 사람들이 python을 사용해 자동화(RPA)를 구축할 때 유용하게 쓰일 것 같다.

Part 1 파이썬 소개

항상 책은 1장이 가장 재미있는 것 같다. 해당 주제에 대한 히스토리와 책을 집필하게 된 계기가 담겨있기 때문이다.

급한 독자는 본론인 ‘Part 3,4’로 넘어가도 되겠지만, 왜 Excel 대신 Python을 써도 되는지 궁금하다면 처음부터 보는 것도 재미있을 것이다.

개발환경을 구축하는 부분은 아주 상세히 적혀있었다. 가령 ‘상대 경로’, ‘절대 경로’에 대한 설명이라던지, conda 명령어를 설명한다던지, 주피터 노트북과 비주얼 스튜디오 코드 사용법 등 초보자가 참고하면 상당히 좋고 스트레스를 덜 받을 내용들이 담겨있었다.

이후 Python 소개 부분이 나오는데, 파이썬 for문과 인덱싱을 해본 사람이라면 충분히 skip 가능한 내용이다.

Part 2 넘파이·판다스 소개

판다스를 ‘파이썬 기반 초강력 스프레드시트’로 소개하며 왜 판다스와 넘파이를 배워야하는지에 대한 설명부터 Part 2가 시작된다.

데이터프레임(Dataframe)과 시리즈(Series)를 잘 다루는 것이 핵심이다. df.loc, df.iloc을 비롯한 데이터프레임 관련 함수를 예시와 함께 설명한다.

img

Part 3 엑셀 없이 엑셀 파일 읽고 쓰기

이제 슬슬 이 책의 진가가 드러난다. Excel 파일을 열고 조작하는 방법을 소개한다. OpenPyXL, pyxlsb 등 관련 라이브러리를 사용한 예시를 소개한다. 엑셀 파일을 읽고 편집하는 방법은 구글링으로도 충분히 얻을 수 있기 때문에, “아! 이런 엑셀관련 라이브러리가 있구나!”만 알고 가면 충분할 듯 하다.

Part 4 엑셀윙스를 통한 엑셀 애플리케이션 프로그래밍

Part 3에서는 Excel 파일 자체를 편집하고 Open하고 save하는 방법을 알려줬다면, Part 4에서는 실질적으로 엑셀 애플리케이션을 자동화하고 고도화하는 방법을 알려준다.

xlwings 라이브러리를 사용하며, VBA코드를 실행하는 방법과 sheet, range 객체를 다루는 법을 소개한다.

이후 나오는 내용들은 Excel에 한정된 내용이 아니라, 파이썬 패키지를 추적하는 small project를 웹 API, DB를 사용하여 구축하는 예시가 나온다.

Excel관련된 내용은 아니지만, 가볍게 읽어서 관련 지식을 쌓는 것이 좋아보인다.

총평

실제 업무에서 사용할 것 같은 Excel 자동화 예제가 있었으면 좋겠다. 단순히 Excel 관련 라이브러리를 사용하는 방법만 소개하고 있기 때문이다. 실무자가 읽기보다는 초보자가 읽어서 CS관련 지식을 쌓는게 더 좋아보인다.

<이 리뷰는 한빛미디어 ‘나는 리뷰어다’로 부터 책을 지원 받아 작성되었습니다>




© 2020. by lsh110600

Powered by aiden