한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.
이번달 한빛미디어 <나는 리뷰어다> 활동 에서 "Python for Excel 엑셀이 편해지는 파이썬" 을 받아서 읽어보게 되었습니다.
엑셀로 보고서를 많이 만드는 입장에서 해당 "엑셀이 편해지는 파이썬" 의 내용은 신선하게 다가온 것 같습니다.
JAVA 또는 HTML 을 이용하여 CSV 확장자로 엑셀 파일을 만들고 보고서를 제출하고 있는데 파이썬으로 어떻게 엑셀 파일을 만드는지 JAVA , HTML 을 이용하여 엑셀을 만드는 것을 대체할 수 있을까 하는 생각을 가지고 책을 읽었는데 결론은 파이썬 기능 그리고 넘파이, 판다스 등의 활용으로 엑셀 생성 및 변경 등이 상상외로 강력하다는 것을 "엑셀이 편해지는 파이썬" 책을 통해 알게 되었습니다.
파이썬의 강력한 기능, 활용도 또한 높다는 것을 다시 알 수 있게 되었습니다.
우선 "엑셀이 편해지는 파이썬" 책은 크게 3부분 으로 구성되어 있다고 생각합니다.
1. 파이썬, 넘파이, 판다스 관련 내용
2. 판다스를 사용한 엑셀 파일 조작
3. 엑셀윙스를 통한 엑셀 파일 조작
챕터로 언급해 보면
1. 파이썬, 넘파이, 판다스 관련 내용 : Chapter 1 ~ Chapter 6
2. 판다스를 사용한 엑셀 파일 조작 : Chapter 7 ~ Chapter 8
3. 엑셀윙스를 통한 엑셀 파일 조작 : Chapter 9 ~Chapter 12
넘파이, 판다스는 인공지능을 공부하면서 학습을 하였는데 "엑셀이 편해지는 파이썬" 책에서 넘파이 , 판다스 예제는 더 고급적인 사용방법 및 예제를 설명하고 있는 것 같습니다.
복습하는 입장에서 해당 내용을 보고 실습도 하였지만 생소한 사용 방법이 좀 있었고 엑셀을 설명하면서 넘파이, 판다스의 함수 및 기능에 대한 것을 새롭게 배울 수 있었습니다.
판다스를 사용한 엑셀 파일 조작에서는 클래스 및 함수에 대한 예와 샘플등을 보여주면서 엑셀 파일을 생성 및 문법적인 내용을 설명하고 있습니다.
다른 책에 없는 with 문을 활용한 방법 등 다양한 Python, 판다스 문법을 통해서 다양한 경험을 할 수 있었습니다.
판다스를 사용한 엑셀 파일 조작부분 까지만 읽어도 기본적인 파이썬을 이용한 엑셀 조작은 충분히 가능하고 제가 원했던 보고서 등도 쉽게 만들 수 있는것을 확인할 수 있었습니다.
폰트, 자료형 변경, 정렬, 그림 삽입, 그래프 등등 많은 기능을 예제를 통해 간단히 쉽게 확인할 수 있었습니다.
엑셀윙스에서는 엑셀 객체 모델, 변환기와 옵션, 그래프 활용방법 등을 설명하고 있으며 성능 향상 및 다양한 기법 등을 설명하고 있었습니다.
그러면서 속도 문제 및 기능 향상 및 개선 방향에 대한 내용이 적혀 있었습니다. 고급 기능이고 엑셀 보고서를 다룬다면 한번은 고민해야 하는 문제인데 해당 내용을 읽으면서 해결 방안을 생각할 수 있게 되었습니다.
"엑셀이 편해지는 파이썬" 책의 전체 Chapter는 어렵지 않지만 엑셀을 다루기 위한 파이썬 및 넘파이, 판다스 등의 기본적인 핵심과 개선 방향 및 문제점을 해결하는 방법을 자세히 설명하고 있으며 해당 내용을 읽으면서 파이썬의 핵심 기능에 더 접근할 수 있었던 것 같습니다. 다른 책에 없던 많은 문법 기법적인 설명 및 해설이 있어서 상당히 좋았습니다. 엑셀로 설명을 하니 더 쉽게 이해할 수 있었던 것 같습니다.
이 책의 목적은 "엑셀이 편해지는 파이썬" 책에도 언급하였지만 파이썬의 강력한 오픈 소스 패키지를 소개하고 VBA, 파워쿼리 처럼 엑셀에 한정된 솔루션에 얽매이지 않고 파이썬 코드를 사용해 더 많은 가능성을 접하게 하는것이라고 쓰여 있으며 해당 "엑셀이 편해지는 파이썬" 책은 목적에 맞게 상세히 자세히 기재되어 있다고 생각합니다.
이책을 다 읽고 조금 더 연습을 한다면 책에 언급한 것과 같이 다음을 수행할 수 있다고 생각합니다.
- 엑셀 워크북 대신 주피터 노트북과 판다스 코드 사용
- 엑셀 워크북을 OpenPyXL 이나, xlrd, pyxlsb, 엑셀 윙스로 읽고 판다스로 통합하는 일괄 작업
- OpenPyXL, XlsxWriter, xlwt, 엑셀윙스로 엑셀 보고서 생성
- 엑셀을 프런트 앤드로 사용하고 엑셀윙스를 통해 휠씬 더 많은 일들과 연결하기
보고서 생성 기능을 한번 해당 내용을 다시 공부하면서 업무에 적용을 해봐야 할 것 같습니다. 그리고 월간, 주간, 일일 엑셀 자료 보고를 Cron과 파이썬을 이용하여 생성해보는 과정을 도전해 봐야 할 것 같습니다.
해당 책을 읽으면서 넘파이, 판다스를 공부했다고 생각했지만 더 강력한 기능에 대해서도 공부를 해봐야 한다고 느끼면서 책을 읽게 되었습니다.
엑셀 보고서를 다루고 업무자동화에 관심이 있다면 해당 "엑셀이 편해지는 파이썬" 을 한번 읽어 보는것을 추천합니다.