메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

파이썬 라이브러리를 활용한 데이터 분석(3판)

영화 평점, 이름 통계, 선거 데이터 등 실사례 사용

한빛미디어

번역서

판매중

4.8점 (24명)
좋아요 : 88

데이터 분석을 배우는 가장 완벽한 방법

파이썬 라이브러리 사용법부터 실제 데이터를 활용한 실습까지

 

믿고 보는 파이썬 데이터 분석 대표 도서가 3판으로 돌아왔다. 파이썬 판다스 프로젝트 창시자인 웨스 맥키니가 직접 설명하는 파이썬 라이브러리 사용법은 실용적이고 현대적이다. 파이썬과 판다스 최신 버전을 기준으로 내용을 업데이트했고 다양한 사례를 살펴보며 데이터 분석 문제를 효과적으로 해결하는 방법을 알아본다. 

 

판다스, 넘파이, IPython, 맷플롯립, 주피터 등 다양한 파이썬 라이브러리를 소개하고 새로운 기능뿐만 아니라 메모리 사용량을 줄이고 성능을 개선하는 고급 사용법까지 다룬다. 또한 모델링 도구인 statsmodels와 사이킷런 라이브러리도 소개한다. 신생아 이름 통계 자료, 대선 데이터베이스 등 실제 데이터로 실습하며 데이터에 적합한 도구를 선택하고 효과적으로 분석하는 전문가로 거듭나보자.

 

상세이미지700_파이썬 라이브러리를 활용한 데이터 분석(3판).jpg

웨스 맥키니 저자

웨스 맥키니

미국 내슈빌에서 활동하고 있는 소프트웨어 개발자이자 기업가. 2007년 MIT 수학과 학부 과정을 마치고 코네티컷주 그리니치에 있는 AQR 캐피털 매니지먼트에서 금융 분석가로 근무했다. 복잡하고 느린 데이터 분석 도구에 실망해 2008년 파이썬을 배우면서 판다스 프로젝트를 시작했다. 파이썬 데이터 커뮤니티의 활발한 일원이며 데이터 분석, 금융, 통계 계산 애플리케이션에서 파이썬 사용을 독려하고 있다.

공동 창업한 DataPad가 2014년 클라우데라(Cloudera)에 인수된 이후 빅데이터 기술에 집중하기 시작했고, 아파치 소프트웨어 재단의 프로젝트인 아파치 애로(Apache Arrow)와 아파치 파케이(Apache Parquet)의 PMC(프로젝트 관리 위원)로 합류했다. 2018년 R스튜디오(RStudio), Two Sigma Investments와 협력해 아파치 애로 개발에 중점을 둔 비영리단체 Ursa Labs를 설립했다. 2021년에는 기술 스타트업인 Voltron Data를 공동 설립해 현재 최고 기술 책임자로 일하고 있다.

 

 

김영근 역자

김영근

애플 II에서 BASIC으로 처음 프로그래밍을 시작했고, 장래 희망은 항상 프로그래머라고 말하고 다니다 정신 차리고 보니 어느덧 20년 경력을 훌쩍 넘긴 개발자가 되었다. 리눅스 커뮤니티에서 오랫동안 활동했으며 임베디드 환경에서부터 미들웨어, 웹, 스마트폰 애플리케이션에 이르기까지 다양한 분야에서 개발했다. 아시아 최초의 파이썬 소프트웨어 재단의 이사로 활동했으며 2014년 ‘파이콘 한국(PyCon Korea)’을 처음 시작했다. 스타트업 CTO로 재직 중이며 소프트웨어 마에스트로의 기술 멘토이기도 하다. 현재의 장래 희망은 장학 재단 설립이다. 한빛미디어에서 『리눅스 시스템 프로그래밍(개정2판)』(2014), 『고성능 파이썬』(2016)을 번역했다.

 

CHAPTER 1 시작하기 전에

1.1 다루는 내용

1.2 데이터 분석에 파이썬을 사용하는 이유

1.3 필수 파이썬 라이브러리

1.4 설치 및 설정

1.5 커뮤니티와 콘퍼런스

1.6 이 책을 살펴보는 방법

 

CHAPTER 2 파이썬 기초, Ipython과 주피터 노트북

2.1 파이썬 인터프리터

2.2. IPython 기초

2.3 파이썬 기초

2.4 마치며

 

CHAPTER 3 내장 자료구조, 함수, 파일

3.1 자료구조와 순차 자료형

3.2 함수

3.3 파일과 운영체제

3.4 마치며

 

CHAPTER 4 넘파이 기본: 배열과 벡터 연산

4.1 다차원 배열 객체 ndarray

4.2 난수 생성

4.3 유니버설 함수: 배열의 각 원소를 빠르게 처리하는 함수

4.4 배열을 이용한 배열 기반 프로그래밍

4.5 배열 데이터의 파일 입출력

4.6 선형대수

4.7 계단 오르내리기 예제

4.8 마치며

 

CHAPTER 5 판다스 시작하기

5.1 판다스 자료구조 소개

5.2 핵심 기능

5.3 기술 통계 계산과 요약

5.4 마치며

 

CHAPTER 6 데이터 로딩과 저장, 파일 형식

6.1 텍스트 파일에서 데이터를 읽고 쓰는 법

6.2 이진 데이터 형식

6.3 웹 API와 함께 사용하기

6.4 데이터베이스와 함께 사용하기

6.5 마치며

 

CHAPTER 7 데이터 정제 및 준비

7.1 누락된 데이터 처리하기

7.2 데이터 변형

7.3 확장 데이터 유형

7.4 문자열 다루기

7.5 범주형 데이터

7.6 마치며

 

CHAPTER 8 데이터 준비하기: 조인, 병합, 변형

8.1 계층적 색인

8.2 데이터 합치기

8.3 재구성과 피벗

8.4 마치며

 

CHAPTER 9 그래프와 시각화

9.1 맷플롯립 API 간략하게 살펴보기

9.2 판다스에서 시본으로 그래프 그리기

9.3 다른 파이썬 시각화 도구

9.4 마치며

 

CHAPTER 10 데이터 집계와 그룹 연산

10.1 그룹 연산에 대한 고찰

10.2 데이터 집계

10.3 apply 메서드: 일반적인 분리-적용-병합

10.4 그룹 변환과 래핑되지 않은 groupby

10.5 피벗 테이블과 교차표

10.6 마치며

 

CHAPTER 11 시계열

11.1 날짜, 시간 자료형과 도구

11.2 시계열 기초

11.3 날짜 범위, 빈도, 이동

11.4 시간대 다루기

11.5 기간과 기간 연산

11.6 리샘플링과 빈도 변환

11.7 이동창 함수

11.8 마치며

 

CHAPTER 12 파이썬 모델링 라이브러리

12.1 판다스와 모델 코드의 인터페이스

12.2 patsy로 모델 생성하기

12.3 statsmodels 소개

12.4 사이킷런 소개

12.5 마치며

 

CHAPTER 13 데이터 분석 예제

13.1 Bitly의 1.USA.gov 데이터

13.2 무비렌즈의 영화 평점 데이터

13.3 신생아 이름

13.4 미국 농무부 영양소 정보

13.5 2012년 연방선거관리위원회 데이터베이스

13.6 마치며

 

APPENDIX A 고급 넘파이

A.1 ndarray 객체 구조

A.2 고급 배열 조작 기법

A.3 브로드캐스팅

A.4 고급 ufunc 사용법

A.5 구조화된 배열과 레코드 배열

A.6 정렬 더 알아보기

A.7 넘바를 이용해 빠른 넘파이 함수 작성하기

A.8 고급 배열 입출력

A.9 유용한 성능 팁

 

APPENDIX B IPython 시스템 더 알아보기

B.1 터미널 키보드 단축키

B.2 매직 명령어

B.3 명령어 히스토리 사용하기

B.4 운영체제와 함께 사용하기

B.5 소프트웨어 개발 도구

B.6 IPython을 이용한 생산적인 코드 개발 팁

B.7 IPython 고급 기능

B.8 마치며

판다스 핵심 개발자의 데이터 분석 라이브러리 사용 설명서

 

2013년 수정 보완판으로 출간되어 2019년 2판까지 꾸준히 국내 독자에게 사랑받아온 [파이썬 라이브러리를 활용한 데이터 분석]이 3판으로 돌아왔다. 지난 10년 동안 파이썬은 데이터 과학, 머신러닝, 딥러닝에 이르기까지 수많은 분야에서 널리 사용하는 인기 있는 언어로 굳건히 자리 잡았고, 사용자를 위해 꾸준히 업데이트되었다. 3판은 최신 버전의 파이썬, 넘파이, 판다스 및 기타 프로젝트의 변경 사항에 맞춰 책 내용을 다듬었다. 이 책이 대학에서는 교재로, 현업에서는 참고 도서로 많이 사용되는 만큼 이후 몇 년까지도 유효한 내용을 담기 위해 심혈을 기울였다. 파이썬으로 데이터를 다뤄야 하는 모든 이에게 귀중한 도서가 되기를 바란다. 

 

3판에서 달라진 점

- 파이썬 3.11, 판다스 2.0 기반으로 코드 업데이트

- 넘파이 1.23, 주피터 최신 버전 반영

- 새로운 내용 추가

    - 범주형 데이터 자료형

    - 데이터 그룹 변환과 래핑되지 않은 groupby

    - IPython의 매직 명령어와 명령어 히스토리 사용법 

 

이 책은 파이썬으로 데이터를 다루는 다양하고 기본적인 방법을 소개한다. 파이썬 프로그래밍 언어 기초와 데이터 분석 문제를 효율적으로 해결하는 데 도움이 되는 라이브러리를 다룬다. 책의 제목에 ‘데이터 분석’이 들어가 있긴 하지만 데이터 분석 방법론보다는 파이썬 프로그래밍, 라이브러리, 도구에 집중해 설명한다. 

 

대상 독자

- 데이터 분석 실무를 맡게 된 데이터 엔지니어, 데이터 과학자, 머신러닝 엔지니어, 통계 전문가

- 파이썬 대표 라이브러리로 데이터를 분석해보고 싶은 IT 관련 학부생

 

주요 내용

- 넘파이 기초와 고급 기능 사용법

- 판다스로 데이터 로딩, 정제, 조인, 변형하기

- 맷플롯립으로 유용한 시각화 만들기

- 판다스 groupby 기능으로 데이터를 나누고 요약하기

- 규칙적이거나 불규칙적인 시계열 데이터 분석 및 조작하기

- 실제 데이터를 살펴보며 분석 문제 해결법 알아보기

 

옮긴이의 말

인쇄기가 세 번째 한국어판을 막 찍어내려던 순간 판다스 2.0이 릴리스되면서 10년 전 초판을 번역했을 때 기억이 떠올랐다. 판다스 0.14 버전으로 쓰인 책을 번역하던 도중 계속 새로운 버전이 나오면서 많은 부분을 고치는 과정이 말도 못 할 정도로 힘들었는데, 이번에는 판다스 2.0을 설치하고 예제 코드를 다시 검토해 저자에게 PR을 보내고, 확인 요청까지 하는 과정이 다행히 초판 작업 때만큼 힘들지는 않았다. :)

 

판다스도 오랫동안 함께 사용할 수 있는 안정적인 라이브러리가 되었고 이 책 또한 저자의 바람대로 오래 두고 볼 수 있게 되었다. 2판이 도움이 되었다면 파이썬을 활용해 데이터를 들여다보고자 하는 지인들에게 망설임 없이 추천해도 좋을 책이다.

파이썬에 필요한 기본 문법부터 통계에 필요한 각 종 라이브러리까지 폭 넓게 다루는 책입니다. 파이썬에 대한 기본적인 이해가 있다면 추천드립니다!!

● pandas 창시자의 3번째 버전

- 파이썬으로 머신러닝을 하건, 데이터 분석을 하건 데이터 파일을 읽어야 하고,

- 엑셀처럼 친절하지는 않은 파이썬에서 데이터를 읽고 처리하는 대표 라이브러리는 pandas.

- 저자인 웨스 맥키니(Wes McKinney)는 이 pandas의 창시자이다.

- 그리고 이 책은 파이썬 분야의 가장 대표적인 데이터 분석 입문 서적 중 한 권으로 자리매김하고 있다.

- pandas의 버전업과 수요의 변화에 맞춰 조금씩 변화를 주고 있는데, 이번에 3번째 버전이 나왔다.

 

● 버전이 바뀐다는 것의 의미

- 나도 몇년 전, pandas를 공부할 때 이 책의 도움을 받았다.

- 구글링을 열심히 하면서 봤던 apply와 달리 groupby를 찾아봤던 기억이 난다.

- 인터넷으로 공부할 때는 당장 쓸 코드를 찾아볼 수 있어서 좋고 

- 책으로 공부할 때는 앞뒤 설명을 통해 기술의 맥락을 파악할 수 있어서 좋다.

- 그런데 같은 책의 버전이 바뀌면 기존 버전을 갖고 있던 사람 입장에서는 느낌이 묘하다.

새 책을 또 사서 봐야 하나? 는 마음이 드는게 하나. 내가 알고 있는게 이젠 틀리게 된걸까? 하는 불안이 또 하나.

- 여기에 하나를 더 한다면 새로운게 또 뭐가 나온걸까? 대체 뭘 또 봐야되지? 라는 느낌이 하나.

- 잠시만 한 눈을 팔면 발전의 속도를 넘어 방향이 바뀌는 분야다보니 변화에 민감하기 때문이다.

 

● 2판과의 차이

- 출판사의 설명에도 간결하게 정리되어 있지만, 2판과 목차를 비교해봐도 큰 차이는 없다.

- 파이썬과 numpy 등 라이브러리의 버전 업에 따른 문법 변화 정도가 반영되었고

- 범주형(categorical) 자료형과 래핑되지 않은 groupby에 대한 설명이 추가된 정도.

- 2판을 가지고 있는 분들은 조금 안심해도 될 것 같고

- 아직 데이터 분석을 시작하지 않은 분들은 고민할 것 없이 이 책을 고르면 될 것 같다.

 

● ChatGPT와 pandas-ai 시대, 기본기의 의미

- ChatGPT의 등장 이후 데이터 분석의 판도가 많이 바뀌었다.

궁금한 내용을 물어보면 몇 초만에 중급자 이상 수준의 깔끔한 코드를 뱉어주는 ChatGPT의 등장으로

- 페이지를 하나 하나 넘겨가며 들춰봐야 하는 책으로 하는 공부는 조금은 구식으로 느껴지기도 한다.

- 심지어 구글링조차 무의미해지는 느낌이다.

- 수많은 검색결과 중 하나를 골라야 하는 것이 아니라 정답에 가까운 코드를 한 번에 주기 때문이다.

stackoverflow도 방문객을 많이 잃었다는 통계가 이 전반적인 분위기를 단적으로 말해주고 있다.

- pandas는 숙련자와 초심자의 스킬 차이가 많이 나는 라이브러리인데, ChatGPT가 이 차이를 없앴다.

- 심지어 ChatGPT가 탑재되어 복잡한 데이터 분석을 프롬프트로 처리하는 pandas-ai도 등장했다.

- 이런 시기에 노력을 들여 기본기를 익혀야 하는 의미를 다시 새길 필요가 있다.

 

● 분석가의 머리에서 눈과 손까지의 거리

- ChatGPT가 내놓는 코드가 100%가 아니라는 답은 충분하지 않다.

- GPT 모델이 추가 학습을 게을리한다 해도 하나 둘 붙는 plugin들로 점점 세밀한 기능이 강력해 질 것이기 때문이다.

- 분석가의 역량은 몰입도에 크게 좌우된다고 생각한다.

- 실력이 좋은 분석가라도 계속 울리는 전화벨과 밥먹고 합시다~ 하는 소리에는 장사가 없다. 그래서 귀를 막는다.

눈 앞에 있는 데이터는 분석가의 머리에서 아이디어로 꽃피어야 하고, 다시 손으로 빠르게 옮겨져야 한다.

- ChatGPT에게 물어보는 횟수와 시간이 줄어들수록 눈, 머리, 손 사이의 거리는 짧아진다.

- 구글링과 ChatGPT를 통해 야전에서 생존능력을 기르는 것도 중요하지만, 

- 가끔은 여유를 내서 구슬같은 지식들을 한 차례 꿰기를 권한다.

- 구슬을 꿰다 보면 비로소 보이는 빈 자리가 있고, 있는지도 몰랐던 구슬이 나오기 때문이다.

 

※ 한빛미디어 2023 도서 서평단 "나는 리뷰어다"의 일원으로 도서를 제공받아 작성한 리뷰입니다.

이 책은 제목처럼 파이썬을 이용하여 데이터를 분석하는 방법에 대해 설명하는 책이다. 세상에는 많은 언어가 존재하지만 특히 파이썬은 범용적으로 사용할 수 있는 스크립트 언어이면서도 저수준 언어로 개발된 레거시 라이브러리들을 손쉽게 불러 사용할 수 있기 때문에 데이터 분석 및 머신러닝 분야에서 많이 사용되고 있다. 즉, 파이썬이라는 언어를 통해 높은 사용성을 얻을 수 있을 뿐 아니라 기존의 저수준 레거시 라이브러리를 사용하여 높은 성능도 얻을 수 있기 때문에 과학 계산용으로 인기가 높다.

 

거의 700페이지에 달하는 두꺼운 책이다 보니 개발 환경 구축 및 파이썬의 기초부터 데이터 분석 시 사용되는 라이브러리들의 사용법 데이터 조작 방법 마지막으로는 실제 데이터를 분석 예제를 통해 이해를 돕고 있다.

 

basic1.jpg basic2.jpg

< 파이썬이 데이터 분석 분야에서 인기있는 이유 >

 

pandas1s.jpg pandas2s.jpg

< Jupyter 노트북을 통해 손쉽게 라이브러리 기능을 실습해 볼 수 있다. >

 데이터 분석에 사용되는 파이썬 라이브러리들

* Numpy: 대부분의 과학 계산 어플리케이션에서 필요한 라이브러리를 제공한다. 고성능 산술 계산 도구

 

* pandas: 구조화된 데이터나 표 형식의 데이터를 직관적이고 유연하게 다룰 수 있는 자료구조와 함수 제공

* Matplotlib: 그래프나 2차원 데이터 시각화를 제공하는 라이브러리

* IPython, Jupyter: 대화형 파이썬 실행 도구

* SciPy: 과학 계산 영역의 여러 기본 문제를 다루는 패키지

* scikit-learm: 범용 머신러닝 도구

* statsmodels: R 언어용 회귀분석 모델 작업을 기반으로 만들어진 통계분석 패키지

graph1s.jpg graph2s.jpg

< 다양한 데이터 시각화 예제들 >

 

전반적인 책의 내용은 처음부터 손쉽게 따라할 수 있는 튜토리얼 형식의 책이라기 보다는 오히려 레버런스나 사용자 가이드에 가까운 성격의 책이라는 생각이 들었다. 개인적으로 데이터 분석 입문자라면 다음의 순서로 책을 읽기를 추천한다.

* 1장 ~ 3장까지는 실습 및 파이썬 언어에 대한 기초적인 내용이므로 순서대로 정독한다.
* 13장으로 넘어가서 데이터 분석 예제를 보면서 데이터 분석 라이브러리를 통해 어떤 일을 할 수 있는지 감을 익힌다.
* 13장의 데이터 분석 예제에서 사용하는 여러 라이브러리와 기능들을 보고 사용법과 기능들을 앞의 해당 장으로 가서 간단한 예제 코드들을 실습하면서 익힌다
* 자신의 주변에서 얻을 수 있는 데이터들을 가지고 이 책에 설명된 각종 데이터 분석 기능들을 사용하여 유의미한 내용을 찾아본다. 모르는 것은 그때그때 책이나 인터넷을 통해 공부하면서 실제 업무에 적용해본다.

 

이썬은 회사 업무에서 사용해보았기 때문에 큰 문제는 없었지만 데이터 분석과 관련된 각종 수학적 지식들에 대한 이해도가 낮아 이 부분이 이 책을 읽은데 가장 어려운 점이었다. 그래서 역으로 실제 실생활에서 얻을 수 있는 데이터를 가지고 이 책에서 설명된 예제를 참고하여 기능을 하나씩 적용하다보면 좀더 데이터 분석 기능에 익숙해지지 않을까 생각한다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 

 

(해당 포스트에서 소개하고 있는 "파이썬 라이브러리를 활용한 데이터 분석" 책은 한빛 미디어로부터 제공받았음을 알려드립니다.)

 

파이썬 라이브러리를 활용한 데이터 분석(3판)

데이터 분석을 배우는 가장 완벽한 방법 파이썬 라이브러리 사용법부터 실제 데이터를 활용한 실습까지

hanbit.co.kr

 

 

 

10년전에 파이썬으로 데이터 분석을 해야 되겠다 싶어서 처음 봤던 책이 이 책이었다. (생각해보니까 그때 썼던 리뷰도 남아있다.) 그냥 책 제목도 직관적이어서 "이걸로 파이썬을 배우면서 데이터 분석도 할 수 있겠지..." 책 내용도 보지도 않고 그냥 샀던 책이었는데, 이 책이 어느덧 나온지 10년이 되었다. 책을 통해서 배울 수 있었던 것은 데이터 분석의 간단한 지름길을 알려준다는 점이었다. 책의 저자인 웨스 맥키니가 직접 개발한 pandas를 활용해서 이것저것 다양한 데이터 소스를 가지고 시각화도 하면서 통계적 지표도 보여준다는 점이 당시에는 너무 신기했고, 예제를 가지고 한참 살펴봤던 기억이 난다.

 

 

그 책이 이제는 3판으로 출간되어 나왔다. 동일한 주제이지만 책표지나 안에 들어있는 내용들이 개정되어서 나왔다. 처음 나왔을 때는 enthought canopy라는 ipython 기반 툴로 실습했었는데, 이제는 jupyter로 변경되었고 (관련 예제코드도 모두 jupyter notebook으로 제공하는 것 같다.) 안에 들어있는 패키지나 함수 활용법도 최신 패키지에 맞게 개정되어서 나왔다. 아무래도 내용이 개정되면서 추가된 내용이 많아지면서 지면수나 책 금액대도 조금 올라간 부분이 있긴 하지만 책이 담고 있는 내용에 비하면 아주 간소하게 느껴질 정도다. 사실 책의 내용에 대해서 아주 간단하게 언급하긴 했지만, 이 책의 가치는 10년이 지난 지금에서 더 중요성이 있다는 생각이 든다. 당시 책이 나오는 시점에서는 파이썬이나 pandas가 나오는 초창기 시점이기도 하고, 지금처럼 데이터 분석에 대한 중요성이 그렇게 부각되지 않았었다. 오히려 인공지능이 크게 발달하면서 데이터 분석 영역도 점점 넗어지면서 이 책도 역시 많은 사람들에게 활용될 여지가 그때보다는 많이 커지지 않았을까 싶다.

아무튼 이전에 소개한 pandas in action 책과 비교했을 때, 해당 책은 예제 중심의 pandas 활용법에 대해서 내용 전개가 되었다면, 이 책은 pandas를 가지고 처음부터 끝까지 할 수 있는 내용, 예를 들어서 데이터를 로딩하는 것부터 해서 데이터 분석하고 조작하는 방법에 대해서 잘 소개되어 있다. 또 마지막에는 실제 데이터분석 예제를 통해서 다양한 정보와 시각화 결과를 보여주면서 활용 방법에 대해서 전달하고 있다. 개인적으로도 책을 통해서 많이 배운 부분이기도 하고, 그런 부분을 개정판에서 다른 느낌으로 읽으면서 새롭기도 하다.

파이썬으로 처음 데이터 분석을 해보고자 하는 분들께 유익한 책으로 생각됩니다. 각 장마다 연결성을 가지고 있기 때문에 처음부터 교과서를 읽듯이 보다 보면 분명 파이썬을 가지고 데이터 분석을 하는데 자신감을 줄 수 있는 책이라 생각됩니다. "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다." 도서 리뷰: https://foss4g.tistory.com/1879

오라일리-파이썬-1.JPG

 

한빛미디어에서 오라일리의 새로운 도서가 나왔습니다. "파이썬 라이브러리를 활용한 데이터 분석"입니다. 무려 3판입니다!! 수많은 종류의 IT 책이 쏟아져도 명저는 자기 갈 길을 묵묵히 가는 것 같습니다. 2013년도에 초판이, 2023년도에 3판이 나왔어요. 초판 나왔을 때 이 책으로 공부 시작했으면 이미 10년 경력... ㅎㅎㅎ

 

요즘은 영상으로 개발 공부 하는 사람 많고 또 그게 트렌드인데요. 데이터 분석 만큼은 단순 코딩(?) 보다는 좀 더 많은 생각을 하며 접근하는 게 좋다고 봐요. 그렇기 때문에 책으로 천천히 기본을 다지는 게 멀리 봤을 때는 빨리 가는 길이 아닐까 싶어요.

 

책 파이썬 라이브러리를 활용한 데이터 분석의 주요 내용은 다음과 같습니다.

 

- 완전 기초 : 파이썬, IPython 셸, 주피터 노트북 다루는 방법

- 넘파이의 핵심 기능 (부록으로 고급기능도 다뤄요)

- 판다스 기본

- 데이터 로딩/저장, 정제/준비

- 그래프와 시각화 (맷플롯립 이용)

- 그룹 연산

- 시계열

- 영화 평점, 이름 통계 등을 이용한 데이터 분석 실전

 

데이터분석은 파이썬과 그 라이브러리를 이용한 기술적인 부분은 기본인 것 같아요. 그보다는 데이터를 통해 무엇을 나타내고 어떤 인사이트를 얻을지가 분석가로써 다음 단계로 올라가는 중요 요소라고 생각합니다.

 

책 마지막 장에서는 여러가지 데이터를 이용해 실전 분석을 합니다. 그중 하나로 이름 통계를 이용한 분석에서는 그래프를 이용해 여자아이의 이름이 남자아이 이름보다 다양하고 2000년 들어서는 그 다양성 차이가 늘어나는 모습을 보여줍니다. 로우데이터로는 그 의미를 전혀 알 수 없는 단순 텍스트에 불과한 자료들이, 데이터 분석가의 손을 거치면 의미있는 데이터로 다시 탄생한다는 게 신기하고 재밌습니다.

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

이제 파이썬은 전문 개발자든 아니든, 이공계든 인문계든 직업, 전공, 나이 상관 없이 많은 사람들이 사용하고 있는 #프로그래밍 언어가 되었다. 워낙 폭넓게 다양한 곳에서 쓰이다 보니, 마치 일반상식처럼 되어 가고 있다 느낀다.


요즘 인기인 챗GPT가 프로그램도 짜준다고 하지만, 모든 걸 다 알아서 해주는 것은 아니기에 적어도 인공지능이 제대로 만들었는지 알아 볼 수 있는 실력은 갖추고 있어야 한다. 결국 #파이썬 언어 기초 정도는 숙지할 필요가 있다는 것이다.

 

 

그래서 파이썬을 배우려는 분에게 도움이 되는 책 한 권을 소개해 보려 한다. 바로 '파이썬 라이브러리를 활용한 데이터 분석'이라는 책이다. 책 제목에도 나타나 있듯이 각종 라이브러리를 접하고 데이터를 다루는데 특화된 책이다. 이렇게 말하니 벌써 전문적인 냄새가 풍겨, 입문자에게는 어려운 책이 아닌가 할 수 있는데, 먼저 읽어 본 입장에서 그리 부담 가지지 않는 책이라 생각한다. 이미 다른 프로그램 언어를 경험했거나, 파이썬 초급 문법 책 정도 봤다면, 별 부담이 진도를 나갈 수 있을 것이고, 그런 경험이 없더라도, '파이썬 라이브러리를 활용한 데이터 분석'에 나온 설명대로 차분히 따라 할 수 만 있다면, 입문자도 충분히 볼 수 있는 책이다.


그도 그럴 것이 책의 3분에 1 이상이 되는 246쪽에 걸쳐 파이썬 설치와 기초 문법, 산술 계산에 가장 기본이 되는 #넘파이, 데이터를 다루기에 보다 좋은 #판다스 기초를 설명하고 있기 때문이다. 번역도 잘되어 있어, 문장들이 어색하지 않고 자연스러워 이해하기도 편하다.


 

그리고 파이썬을 배우려는 분에게 이 책을 추천하는 또 다른 이유는 책의 메인 주제가 데이터 분석, 데이터를 다룬다는 점이다. 프로그램을 배우면 배울 수록 알겠지만, 어딜 가나 데이터 다루는 것이 기본이다. 텍스트 자료, 엑셀 파일 등을 불러서 목적에 맞게 가공하고, 그것으로 실시간 저장 또는 그래프로 표현하거나, 분석하여 문서화 하거나 다른 기기에 피드백을 주는 등 프로그래밍에서 데이터 작업이 참 많은 부분을 차지한다. #빅데이터, #인공지능 에서 활용도 두말하면 잔소리다. 그러니 #파이썬라이브러리를활용한데이터분석 이 실전 프로그래밍을 배우는데 요긴한 책인 것이다. 



여기서 한 가지 더 좋은 점은 내 경험 상, 프로그래밍 실력을 보다 빨리 쌓는 지름길은 어떤 목적이나 주제를 정해 프로그램을 개발해 보는 것이라 생각하는데, 이 책은 데이터 분석이 메인 주제라서 관련된 기술, 라이브러리를 종합적으로 만나볼 수 있고, 이를 이용해 그래프도 그려보고, 시계열 분석도 해본다. 마지막 장에서는 영화 평점, 이름 통계, 선거 데이터 이용과 같은 것을 간단히 해보며, 실전 개발의 경험도 느낄 수 있게 된다.



'파이썬 라이브러리를 활용한 데이터 분석'을 통해 얻을 수 있는 #프로그램 지식을 나열해 보면, 일단 파이썬 문법은 기본이고, 파이썬에서 가장 기본이 되는 산술 계산 #라이브러리 넘파이, 구조화 된 데이터나 표 형식의 데이터를 다루는데 빠르고 편한 판다스, 2차원 데이터 시각화 라이브러리, 맷플롯립, 대화형 환경을 위해 개발된 IPython, 과학계산을 위한 사이파이, 머신러닝 도구 사이킷런, 통계분석 패키지 statsmodels, patsy 등 매우 다양한 것을 다루는 방법을 배우게 된다. 여기에 추가로 부록편에서는 넘파이와 IPython의 좀 더 깊은 기능도 배운다.



게다가 저자 웨스 맥키니는 판다스 프로젝트 초기에 많은 역할은 한 사람이라서 그런지, 책 곳곳에서 판다스 관련 정보와 다양한 활용을 잔뜩 만날 수 있어서 판다스를 제대로 익히는데 많은 도움이 된다.


그리고 책을 보면 알겠지만, 무조건 뭐가 좋다, 파이썬이 최고, 그런 주장을 하지 않는다. 파이썬을 사용하는 이유, 사용하면 안 되는 이유를 나눠 설명하고 있고, 많은 라이브러리의 장단점, 어떻게 쓰는 것이 효율적인지 균형감을 갖춘 조언을 담고 있다. 경험 적은 프로그래머나 입문자에게 올바른 안내를 해주고 있다.



이래저래 '파이썬 라이브러리를 활용한 데이터 분석' 입문자, 초급자에게 많은 도움을 주는 내실 있는 책이다. 3판까지 나온 이유를 말하지 않아도 알 거 같은 책이다. 이번 3판은 최신의 버전과 정보를 반영했다고 한다. 아울러 이번 3판도 이전 1, 2판을 번역한 김영근 역자가 다시 맡은 책이라서 더욱 잘 다듬어져 나왔다 느껴진다.


'파이썬 라이브러리를 활용한 데이터 분석'은 단순히 정보만 제공하는 것이 아니라, 저자의 프로그래밍 경험을 함께 나눈 책이다. 각종 개발에 기본이 되는 데이터 다루는 기술을 차근차근 배울 수 있는 책이다. 파이썬 프로그래밍 능력이라는 벽돌을 하나씩 하나씩 튼튼하게 쌓는데 매우 적당한 #학습서 이다. 파이썬을 배우려는 분에게 적극 추천한다.

IMG_7202.jpg

 

프로그래밍 언어 파이썬

 

파이썬은 컴퓨터 프로그래밍 언어 중에 다양한 용도를 가지고 있어요. 특히 데이터 분석에 널리 사용되는 프로그래밍 언어이기도 한데요. 다양한 기능과 함께 파이썬은 초보자들도 쉽게 배울 수 있다는 점에서 많은 인기를 얻고 있어요.

 

데이터분석 뜻

데이터 분석의 뜻은 복합적이지만 쉽게 설명해 드릴게요. 많은 양의 데이터를 수집하고 그 데이터로부터 유용한 정보를 도출하는 것이라고 정리할 수 있어요.

 

쉽게 예를 들어볼게요. 학교에서 학생들의 시험 점수로 데이터를 분석한다고 가정해봐요. 파이썬을 사용하면 시험 점수 데이터를 입력하고, 그 데이터를 통해 어떤 학생이 성적이 우수한지, 어떤 문제가 어려웠는지 등을 알아낼 수 있어요.

그리고 학생들의 학습계획이나 보완계획을 세우는 등 다양한 목적으로 데이터를 활용할 수 있겠죠.

IMG_7207.jpg

파이썬과 데이터분석

 

파이썬 인기있고 배우기 쉽다고 알려드렸는데요. 이 밖에도 파이썬은 데이터 분석에 필요한 효과적인 도구들을 많이 제공하고 있어요. 

파이썬의 판다스Pandas라는 라이브러리가 대표적인데요. 판다스는 데이터를 쉽게 관리하고 분석할 수 있는 기능을 제공하기 때문에 파이썬 라이브러리의 대표격이라고 할 수 있어요. 판다스를 사용하면 데이터를 정리하고 필요한 정보를 추출하는 작업을 간편하게 할 수 있거든요.

IMG_7209.jpg

 

 

 

파이썬 라이브러리 데이터분석

 

또한, 파이썬에는 시각화 도구인 'Matplotlib'이나 'Seaborn'도 있어요. 이 도구들을 사용하면 데이터를 그래프나 차트로 표현하여 시각적으로 보기 쉽게 만들 수 있는데요. 시각화를 통해 데이터의 패턴이나 특징을 빠르게 파악할 수 있어요.

 

데이터 분석은 특히 오늘날과 같은 정보화 사회에서 매우 중요한 역할을 하고 있어요. 파이썬 라이브러리를 통해 데이터를 분석하고 유용한 정보를 추출하는 능력을 갖추면, 문제를 해결하거나 의사 결정을 내리는 데에 도움을 많이 얻을 수 있거든요.

IMG_7206.jpg

 

파이썬 라이브러리를 활용한 데이터분석 python for Data Analysis

 

파이썬 라이브러리를 활용한 데이터 분석 3판이 새롭게 출간되었어요. Python for Data Analysis 하면 데이터과학 분야에서는 교과서처럼 사용하는 베스트 셀러인데요. 파이썬을 활용하기 위한 기초 개념부터 데이터분석에 필요한 라이브러리까지 다루고 있기 때문에 올인원의 교재에요.

 

파이썬 라이브러리인 판다스, 넘파이, 맷플롯립, 사이킷런까지 사용법을 배울 수 있는데요. 특히 좋은 점은 실제 데이터를 기반으로 실습하면서 데이터 분석 과정에 대한 전반적인 학습이 가능하다는 부분이에요.

 

만약 데이터 분석을 처음 공부하게 되시는 분이 있다면, 파이썬 기초공부와 함께 이책으로 공부하시면 기초부터 차근차근 실력을 쌓아가실 수 있어요.

 

이 책은 자세한 설명과 함께 예제코드와 실습을 중심으로 실무적인 데이터 분석 역량을 쌓을 수 있도록 구성되어 있어요. 데이터 분석에서도 이론만 설명하는 것이 아니라 구체적으로 활용할 수 있는 방법과 테크닉에 대한 부분이 모두 소개가 되어 있어요.

 

데이터 수집, 데이터 정제, 데이터 시각화, 모델링과 인공지능까지 파이썬 데이터분석으로 할 수 있는 모든 것을 담고 있는 Python 파이썬 라이브러리를 활용한 데이터 분석 3판으로 데이터 분석 실력을 레벨업 시키셨으면 좋겠어요.

 

 

데이터 분석, 데이터 사이언티스트, 전처리 등 데이터와 관련된 일 및 공부를 많이 해오고 있습니다. 점점 신규 프로젝트 보다는 기존 프로젝트에서 데이터를 활용하여 추가적인 업무를 수행하거나 현업 담당자에게 정보를 전달하는 과정이 많아지는 경우가 많아서 계속 관련 자료를 공부하는 와중에 "파이썬 라이브러리를 활용한 데이터 분석" 을 선택하여 읽어보게 되었습니다.

 

우선 "파이썬 라이브러리를 활용한 데이터 분석" 을 평하자면 파이썬 공부 이후 또는 기초 데이터 분석을 공부한 후에 좀 더 고급 기술을 공부하려는 사람에게 맞는 책이라고 생각이 듭니다.  저에게는 몇몇 파이썬 및 데이터 분석을 공부한 후에 해당 책을 읽었을때 해당 책의 내용이 많았지만 어렵지 않게 관련 내용을 학습할 수 있었습니다. 하지만 초보자가 관련 책을 읽기에는 조금 어렵지 않을까 하는 생각이 들었습니다. 전체적인 내용 및 각 소스의 연습은 PyCharm을 이용하여 각 소스를 직접쳐서 수행해 봤고 관련 결과 및 책의 결과 및 내용을 상세히 읽으면서 학습해 봤습니다.



"파이썬 라이브러리를 활용한 데이터 분석" 크게 구분하면 3가지 공부 영역으로 구분할 수 있을 것 같습니다.

1. 파이썬 기본

2. 넘파이, 판다스

3. 데이터 분석

총 13개의 Chapter 로 위의 3가지 영역을 상세히 그리고 많은 실습 소스로 "파이썬 라이브러리를 활용한 데이터 분석" 이 구성되어 있습니다.

실제로 "파이썬 라이브러리를 활용한 데이터 분석"을 읽어 보면서 해당 실습 소스를 직접 수행해보면서 책을 읽어 보기를 추천합니다. 상당히 많은 내용에 실제 업무에서도 활용할 수 있을 정도로 재미있는 그리고 실용적인 내용이 많았습니다.

 

"파이썬 라이브러리를 활용한 데이터 분석" 책의 핵심은 데이터 분석 관련 내용인데 데이터 사전준비, 데이터 가공,  데이터를 활용한 그래프 시각화, 데이터 분석에 꼭 필요한 그룹 연산 등 그리고 데이터를 분석하기 위한 시계열 등 관련 내용은 데이터 분석의 모든 기본 개념을 담고 있다고 생각합니다. 파이썬 라이브러리도 특히 많은 것을 공부할 수 있습니다.

그리고 마지막 Chapter 13에서는 실습 예제가 있어서 앞에서 배웠던 기술을 활용해서 데이터를 어떻게 분석하는지 확인할 수 있도록 구성되어 있습니다.

 

마지막으로 데이터 분석을 공부하면서 점점 개념이 잡히고 어려운 점이 많아지는 것을 느끼고 있습니다.

전처리및 가공 데이터 시각화를 통한 업무 당당자와의 대화 등 데이터 분석은 계속 공부해야 하는 분야라고 생각합니다.

"파이썬 라이브러리를 활용한 데이터 분석" 책은 데이터 분석에 대한 기본 개념 및 핵심을 정리하기 위해 좋은 책이라고 생각합니다. 조금 어렵고 책 내용도 많았지만 정말 많은 도움이 되는 내용이라고 생각합니다.

 

3판이 나올정도로 유명하고 유익한 내용입니다. 데이터 분석을 공부하는 모든 분이 읽어 보기를 추천합니다.

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

 

현재 기준으로 데이터 분야는 여러 지식을 습득해서 필요에 따라 적용할 수 있는 것이 가장 중요한 능력이라고 생각합니다. 본 책의 초입에는 데이터 분석을 위한 파이썬 문법 설명이 나오고 뒤에는 데이터 분석에서 흔히 사용하는 라이브러리나 프레임워크들을 구체적인 사례에 따라 설명합니다. 통계 지식과 파이썬을 모르는 입문자도 충분히 볼 수 있는 책이었습니다. 데이터 분야 입문서로 굉장히 좋은 책이라고 생각합니다.

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.
웨스 맥키니 지음 / 김영근 옮김

 이 책은 데이터분석을 처음하는 분들에게 많이 익숙한 책이라고 생각합니다. 초판은 2013년에 만들어졌는데, 10년이 지난 2023년 5월에 개정 3판이 출시 되었습니다. 10년이 지나서도 개정해서 만든다는 것은 그만큼 많은 분들에게 사랑받았던 책이라고 볼 수 있겠죠. 책을 읽어가면서 어떤 부분이 많이 변경되었는지 확인해보도록 하겠습니다.

1. 대상 독자

 이 책은 Pandas, Numpy, Matplotlib, IPython, Jupyter, Scipy, scikit-learn, statsmodels 등 데이터 분석에 많이 활용되는 라이브러리를 다루고 있습니다. 단순히 라이브러리만을 다루기 보단, 라이브러리를 다루기 이전에 튜플, 리스트, 딕셔너리와 같은 자료구조, 함수 작성하는 방법 등 파이썬 기초 내용이 포함되어 있습니다. 데이터분석을 실습과 병행하며 배워보고 싶은 분들에게 추천해보고 싶은 책입니다. 많은 내용을 담고 있다보니, 약 700쪽에 달하지만, 하나 쯤은 가지고 필요할 때마다 보시면서 공부해도 좋을 것 같습니다. 

 

2. 이 책의 특징

1) 책의 구성

 이 책은 파이썬의 기초부터 다루고 데이터 분석의 전체의 과정을 순서대로 나열하듯 구성하고 있습니다. Chapter 1~5까지는 데이터 분석을 위한 기초공사로 기본적인 넘파이, 판다스를 다룹니다. Chapter 6 ~ 8 까지는 데이터 전처리에 해당되는 내용을 다룹니다. Chapter 9 ~ 10 에선 EDA때, 데이터 시각화, 통계 값 등을 확인하는 방법을 다룹니다. Chapter 11에서는 정형 데이터가 아닌 시계열 데이터를 다루는 방법을 Chapter 12에서는 통계 모델, 머신러닝 모델 등을 만들 때 활용하는 라이브러리를 다룹니다. Chapter 13에서는 앞에서 배운 내용을 바탕으로 다양한 데이터에서 직접 데이터 분석해볼 수 있습니다.

  • Chapter 1 : 시작하기 전에 (데이터 분석에 파이썬을 사용하는 이유, 필수 라이브러리 소개, 설치 및 설정 방법)
  • Chapter 2 : 파이썬 기초, IPython과 주피터 노트북
  • Chapter 3 : 내장 자료구조, 함수, 파일
  • Chapter 4 : 넘파이 기본: 배열과 벡터 연산
  • Chapter 5 : 판다스 시작하기
  • Chapter 6 : 데이터 로딩과 저장, 파일 형식
  • Chapter 7 : 데이터 정제 및 준비
  • Chapter 8 : 데이터 준비하기 : 조인, 병합, 변형
  • Chapter 9 : 그래프와 시각화
  • Chapter 10 : 데이터 집계와 그룹 연산
  • Chapter 11 : 시계열
  • Chapter 12 : 파이썬 모델링 라이브러리 (statsmodels, scikit-learn, patsy)
  • Chapter 13 : 데이터 분석 예제
  • Appendix : 고급 넘파이, IPython 시스템 더 알아보기

 

2) 라이브러리의 디테일한 내용을 포함

  저는 실제 회사에서도 회사 데이터를 활용해서 데이터분석을 진행하게 되는데, 항상 사용하는 것들 외에 잘 기억이 안나는 함수나 옵션이 있을 때, 참고가 많이 되었습니다. 항상 csv나 excel 형태로 데이터가 오는 것은 아니고, 각 데이터마다 특징이 다르다보니 다양한 옵션을 활용해야 하는데, 생각보다 디테일한 내용을 많이 담고 있다보니, 옆에 두고 참고하기 좋은 책인 것 같습니다. 

위의 그림처럼, 실제로 보고서 작성할 때, 그림 내에 화살표나 글씨 등을 포함할 때가 많은데, 그러한 경우에도 도서를 참고하여 쉽게 그릴 수 있습니다.

3) 다양한 샘플 데이터로 직접 분석

 시계열 정보 처리, 영화 평점 데이터, 이름 유행 분석 등 다양한 샘플 데이터로 앞에서 배운 라이브러리를 충분히 익힐 수 있는 것 같습니다. 실제로 회사에서 접할 수 있는 문제들도 해당 예제들을 통해 충분히 접해볼 수 있을 것 같습니다. 더 나아가서 여기에 있는 샘플 데이터 외에도 다양한 샘플 데이터를 활용하여 앞에서 배운 내용을 더 공부해본다면 좋은 경험이 될 것이라고 생각합니다.

3. 총평

 데이터 분석에 대해 궁금하지만 어떤 것부터 해야할 지 모른다면 이 책으로 차근차근 따라가시다보면 어느덧 다양한 데이터 분석을 진행할 수 있도록 돕는 책입니다. 파이썬이나 판다스, 넘파이를 좀 다룰 수 있다면 필요한 내용들만 보면서 데이터분석 프로세스를 이해해볼 수 있는 책입니다. 무엇보다, 회사에서 일하시게 되었을 때 옆에 두고 일하면 많은 도움이 될 것 같습니다. 저도 회사에서 필요할 때마다 참고하면서 업무를 진행하고 있답니다. 데이터 분석에 관심있으시다면 꼭 한번 읽어보시길 추천드립니다.

 

이 책의 저자(웨스 맥키니)는 판다스 프로젝트를 시작한 사람 중 한 명이다. 판다스 핵심 개발자가 작성한 판다스 라이브러리 설명서라고 하니 어떤 내용이 수록되어 있을지 큰 기대가 되었다.

이 책은 현업 종사자도 많이 사용하는 교재로 이번에 3판이 새로 출시되었다. 기존의 교재와의 차이를 살펴보면 올드한 내용은 과감하게 생략, 최신 코드로 업데이트, 약간의 내용이 추가되었다고 한다.

 

 

두께는 700페이지가 넘어간다. 그만큼 무게도 꽤 나가기 때문에 종이책보단 전자책이 휴대성 측면에선 더 좋을 것이다.

 

파이썬 기초 내용을 책에서 다루긴 하지만 파이썬 완전 초보자(Python의 P도 모르는 사람)를 위한 교재는 아니며, 심도 있는 내용도 있기 때문에 파이썬을 얕게 알고 있는 사람이라면 더욱 유익하게 느껴질 것이라고 생각한다. 혹자는 데이터 분석에서 많이 사용하는 넘파이, 판다스 라이브러리 기초를 알고 있는 사람에게 추천하는 교재라고 말한다. 나 또한 데이터 분석에 관심을 갖고 파이썬 기본서를 공부해본 사람 혹은 넘파이, 판다스 라이브러리 기초를 알고 있는 사람에게 추천하고 싶은 교재이다.

 

 

초보자를 위한 교재는 아니라고 생각한 이유를 좀 더 덧붙이자면 파이썬 함수 파트가 시작된지 얼마 지나지 않아 '함수도 객체다' 라는 개념을 설명하기 위해 re 라이브러리를 임포트하여 문자열 리스트 정형화 과정을 보여준다. 코드에 쓰인 메서드 기능을 설명해주는 내용은 없어서 대충 어떤 기능인지 짐작하고 넘어가거나 궁금한 부분은 따로 찾아봐야 했다.

 

파이썬 기초 교재였다면 단순히 이해를 위해 직관적이며 단순하고 짧은 코드만을 사용했을 것이다. 기초 내용은 입문 교재와 구성이 비슷하지만 더 높은 레벨의 예제 코드들이 이 교재에서 특히 마음에 들었다.

 

이 책에서 배울 수 있는 것은 넘파이, 판다스 라이브러리를 다루는 기초 문법부터 데이터 로드, 정제(누락, 결측, 중복, 이상치 처리 등), 맷플롯립 라이브러리를 사용한 시각화, 시계열 데이터 처리이며, 실제 데이터를 이용해 데이터 분석을 실습할 수 있는 예제가 4개가 수록되어 있다.

 

 

파이썬으로 데이터분석을 시작하고 싶은 분들에게 정말 좋은 책이다. 책의 목차를 순서대로 차근차근 공부하다보면 데이터 분석 라이브러리 활용과 코드 작성 스킬셋을 크게 향상시킬 수 있을 것을 기대한다. 한 번 따라해보고 나중엔 실무에 적용할만한 내용을 참고해보아야 겠다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

파이썬 라이브러리를 활용한 데이터 분석

 

이 책은 파이썬 판다스 창시자인 웨스 맥키니가 직접 설명하는 책으로

파이썬 라이브러리 사용법 부터, 실제 데이터를 활용한 실습 까지 잘 검증된 도서 입니다.

파이썬, 넘파이, IPython, 맷플로립, 사이파이, 사이킷런 등 다양한 파이썬 라이브러리를 소개하고 최신 버전을 기준으로 다양한 사례를 살펴 봅니다.

또한 넘파이의 기본부터, 판다스를 활용한 데이터 프레임의 조작 및 확인과 그래프, 시각화 까지

빅데이터 분석기사나 ADP를 준비하는 수험생 에게도 기초부터 탄탄히 잘 준비 할 수 있는

디딤돌 같은 도서로 추천합니다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

#파이썬라이브러리 #판다스 #데이터분석

IMG_8820.jpg

 

 

 

요즘에는 데이터 분석하면 파이썬을 떼어놓을 수 없다. 

‘파이썬 라이브러리를 활용한 데이터 분석’의 1판은 2012년에 나왔으니 파이썬을 활용한 데이터 분석 책으로는 꽤 빠르게 출발했다고 볼 수 있다.  

저자 웨스 맥키니 Wes McKinney 는 MIT 수학과를 졸업하여 금융 분석가로 활동하고 다수의 Apache 프로젝트를 수행하였다. 

2008년도부터 Pandas 프로젝트를 시작하여 데이터 분석, 금융, 통계 계산 애플리케이션에서 파이썬 사용을 독려하였다. 

책은 2012년에 출간되었으나 2판(2017), 3판(2022)을 거쳐 시대에 뒤처진 내용을 배제하고 새로운 정보를 업데이트했다.

 

 

예제 코드는 깃허브 저장소(https://github.com/wesm/pydata-book)에서 제공되며, Gitee(https://gitee.com/wesmckinn/pydata-book)에서도 확인할 수 있다.

또, 필자의 홈페이지에서 책의 공개 버전 또한 확인할 수 있다. (한국어를 안 곁들인..)

 



 

스크린샷 2023-05-27 오후 9.48.19.png


Chapter1은 파이썬을 사용하는 이유와 필수 파이썬 라이브러리, 설치 방법 등 파이썬의 근본적인 지식에 대해 설명한다.

 

스크린샷 2023-05-27 오후 9.51.51.png

 

Chapter2부터 마지막 챕터까지 파이썬 라이브러리와 분석 방법에 대해 설명한다.

기초부터 시작하여 고급으로 끝나는 커리큘럼이기 때문에 처음 분석을 시작하는 사람들이 읽어도 좋을듯하다. 필자는 도메인에 특화된 분석으로 넘어가기 전 숙지하면 좋을 정보라고 언급하기도 했다.

 

데이터 분석 분야에서 파이썬이 두루 사용되는 것은 널리 알려져 있다. 구체적으로 파이썬이 사용되는 이유와 사용되지 말아야 하는 이유 또한 숙지하고 가면 도움이 될 것이다.

 

파이썬은 범용 프로그래밍 언어일 뿐 아니라 과학 계산용으로도 적합하기 때문에 데이터 애플리케이션 개발을 위한 최고의 언어다. 

최근에는 판다스나 사이킷런과 같은 파이썬 라이브러리 지원이 개선되어 데이터 처리 업무에 두각을 나타내고 있다. 

그러나 파이썬을 사용하지 않아야 할 경우도 존재한다. 

파이썬은 인터프리터 언어라 자바나 C++ 같은 컴파일 언어보다 훨씬 느리게 실행된다. 매우 짧은 응답 시간이 필요한 애플리케이션에서는 지양된다. 

또, 멀티스레드를 처리하거나 CPU에 집중된 많은 스레드를 처리하는 애플리케이션에도 적합하지 않다.

 

이 책에서는 SciPy, sicikit-learn, statsmodels 패키지를 주요하게 사용하고 있다. 인공지능보다는 데이터 분석에 집중하고 있음을 알 수 있다.

 

 



 

output_3460770689.jpg

 

환경 설정과 패키지 설정에 대한 가이드가 나온 뒤 주피터와 IPython에 대한 설명을 이어갔다. 

표준 파이썬 인터프리터와는 다른 IPython의 차이로 탭 자동 완성, 변수 이름 앞이나 뒤에 물음표를 붙여 그 객체에 대한 일반 정보를 출력하는 자기 관찰에 대해 소개했다. 

앞에서는 기초적인 부분에 대해서만 언급하였으나 필요시 IPython 시스템을 더 알아볼 수 있도록 응용 방식, 고급 기능 등을 소개하는 부록도 별도로 있다.

 

다음으로는 본격적으로 파이썬의 기초적인 개념에 대해 설명한다. 들여쓰기 방식부터 함수와 객체 메서드 호출, while, range 등 분석 혹은 개발을 함에 있어 기본적으로 숙지해야 할 사항들을 짚어준다. 갓 파이썬을 배우기 시작한 이들에게도 큰 부담이 없을 것 같다.

 



 

output_104233169.jpg

 

책은 데이터 분석 예제로 실습을 할 수 있게 되어있다. 

무탈히 끝냈다면 고급 넘파이를 배울 수 있는 챕터로 넘어가 단계별로 깨우치는 기분을 느낄 수 있을 것이다. 

파이썬에 대한 기초 지식부터 시작하여 고급 분석을 터득하고 싶은 이들에게 이 책을 추천한다.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

IMG_4350.JPG

 

이 책은 파이썬의 기초 문법부터 시작하여 판다스, 넘파이, IPython, 맷플롯립, 주피터 등 다양한 파이썬 라이브러리를 사용하여 데이터를 분석하는 방법을 설명합니다. 또한, 신생아 이름 통계 자료, 대선 데이터베이스 등 실제 데이터를 사용하여 실습을 진행합니다. 또한, 데이터 분석을 처음 시작하는 사람부터 데이터 분석을 심화적으로 공부하고 싶은 사람까지 모두에게 유용한 책이기도 합니다. 파이썬과 판다스에 대한 기본적인 지식을 갖추고 있다면 이 책을 통해 데이터 분석에 필요한 기술을 빠르게 익힐 수 있습니다.

 

 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

2013년 수정 보완판으로 출간 되 2019년 2판, 그리고 2023년에는 3판으로 새롭게 리뉴얼된 파이썬 라이브러리를 활용한 데이터 분석 책입니다. 프로그래밍 입문 언어로 많이 선정되는 파이썬은, 데이터 과학, 머신러닝, 딥러닝 등 정말 많은 분야에서 쓰이고 있는데요. 이 책은 데이터 분석으로서 쓰이는 파이썬의 특징이 무엇인지 알려주고, 기본 알고리즘 소개 및 데이터 분석 방법과 케이스에 대해 설명해주고 있습니다.

 

 

파이썬 기초부터 시작하여 기본 프로그래밍 언어에 쓰이는 개념, 넘파이, 판다스, 데이터 사용 및 정제 그리고 시각화와 집계 등 다양한 목차로 나뉘어 데이터 분석 툴로서의 파이썬에 대해 설명해주고 있습니다. 그렇다고 데이터 분석 방법에만 치우치지 않고, 파이썬 프로그래밍과 라이브러리, 도구 등에 집중해 설명해주는 부분도 있습니다.

 

 

 

책의 주요 독자 타겟층은 데이터 엔지니어, 데이터 과학자, 머신러닝 엔지니어, 통계전문가 및 데이터 분석을 파이썬 대표 라이브러리로 활용해보고 싶은 IT 학부생들입니다. 특히 판다스라는 검증된 라이브러리를 활용하여 데이터분석에 대하여 이해하기 쉽고 자세히 설명되어 있다보니, 데이터 관련 전공자가 아닐지라도 관심있는 분들은 진득하게 볼 만한 요소들이 많다고 생각이 들었습니다.

 

 

책은 처음 파이썬 문법에 대해 설명할 때, 다양한 예제들을 통하여 빠르게 특징에 대하여 이해할 수 있도록 구성되어 있습니다. 이에 그치지 않고 다른 언어와의 어떤 특징과 겹치는지, 그리고 파이썬 문법에 있어 정말 중요한 내용이 무엇인지에 대하여 자세히 적어둔 부분이 기억에 남습니다.

 

 

 

저는 전공자가 아니다보니 내용에 대해 깊게 파고들기 보다는 해당 내용들이 있다 정도로 넘어갔습니다만, 이론 및 예제 설명에 있어 난이도를 최대한 낮춰 설명하려고 노력하는 것이 책에서 느껴졌습니다. 앞서 이야기한 것 처럼 그래프 시각화 및 데이터 출력 등 다양한 실제 케이스들을 어떻게 접근하면 좋을지, 그리고 라이브러리를 어떻게 활용하면 좋을지에 대하여 자세히 적혀 있어 좋았던 것 같습니다.

 

 

 

데이터 분석에 대하여 더욱 깊게 이해하고 싶으신 분들, 혹은 데이터과학과 파이썬에 대하여 같이 배워보고 싶은 분들께 추천 드리는 책입니다. 특히 올해 3판이 나왔다보니 최신 업데이트가 반영된 내용들로 구성되어 있다보니 더욱 접하실 때 좋겠다는 생각이 드네요.

 

IMG_2361.jpg

 

 

 

 

데이터 사이언티스트 가장 기본 중 하나가 데이터 분석이다

 

 

 

부트 캠프에서 공부하면서

 

 

가장 어려운 것도 데이터 분석이었지만

 

 

팀 과제 수행할 때

 

 

가장 재밌었던 시간도 데이터 분석하며 토론하는 것이었다

 

 

A라는 데이터가 있을 때 컴퓨터 공학 전공자도 있지만, 비전공자들도 있기에

 

 

각자 살아온 길이 다르고 데이터를 보는 시각도 달라서

 

 

이런 데이터를 이렇게 볼 수도 있구나 재밌게 느꼈다

 

 

하지만 데이터를 분석하려면

 

 

내가 데이터를 분석하는 방법을 알아야 하는데

 

 

난 아직 그 수준에 도달하기에 부족하기에

 

 

이번 달 서평 책을 데이터 분석 책으로 선택했다

 

 

사실 데이터 분석 관련 책이 한 권 있긴 하지만 데이터 분석에 대해 깊이 파고드는 책은 아니고

 

 

데이터 분석이란 이런 거야~라고 보여주는 책이라서

 

 

딱 데이터 분석이 뭔지 모르는 사람에게 알려주는 정도라

 

 

데이터 분석 공부에 갈증이 있었는데

 

 

이번 [파이썬 라이브러리를 활용한 데이터 분석] 책을 통해

 

 

그 갈증이 어느 정도 해소된 것 같아서 좋았다

 

 

책의 목차는 다음과 같다

 

 

 

책은 파이썬의 기본과 주피터 노트북 사용법 설명까지

 

 

3장에 걸쳐서 할애해서 파이썬을 아예 모르는 사람이 아니라면

 

 

충분히 읽을 수 있을 것 같은 난이도라 생각했는데

 

 

한빛 출판사 홈페이지를 가서 난이도를 확인하니

 

 

초중급으로 돼있어서 딱 그 정도인 것 같았다

 

 

(여러분이 한빛 출판사 책을 사게 된다면 한빛 출판사 공식 홈페이지에 가면

 

 

책에 따른 난이도를 적어놨으니 확인해 보기 바란다)

 

 

 

 

난 이 책을 읽으면서

 

 

다른 건 몰라도

 

 

넘파이와 판다스 만큼은 꼭 집중해서 보자고 생각하고

 

 

책을 펼쳤다

 

 

데이터 분석의 기본 라이브러리 2가지라 생각하고

 

 

이 2개를 제대로 다룰 수 있다면 앞으로 배울 많은 내용들에

 

 

살을 붙일 것이라 생각하고 그렇게 목표를 잡고 책을 읽으니

 

 

서평 기간 동안 수박 겉 핥기로 읽는 것보다 집중적으로 공부하며 읽으니

 

 

더 재밌게 실습하며 책을 읽었던 것 같다

 

 

당연하지만 워낙 유명한 책이라 예제 코드가 제공된다

 

 

https://github.com/wesm/pydata-book

 

 

GitHub - wesm/pydata-book: Materials and IPython notebooks for "Python for Data Analysis" by Wes McKinney, published by O'Reilly Media이미지 썸네일 삭제

GitHub - wesm/pydata-book: Materials and IPython notebooks for "Python for Data Analysis" by Wes McKinney, published by O'Reilly Media

Materials and IPython notebooks for "Python for Data Analysis" by Wes McKinney, published by O'Reilly Media - GitHub - wesm/pydata-book: Materials and IPython notebooks for "Pyth...

 

github.com

 

 

 

난 예제 코드를 받지 않고,

 

 

일부러 책의 실습 내용들을 일일이 적으며 공부했다

 

 

코드 타이핑은 개발자의 기본이기 때문에

 

 

아는 내용이 있어도 적으면서 공부하니 더 잘 머리에 들어온 것 같다

 

 

책은 Numpy와 Pandas에 대해

 

 

110페이지 넘게 기술하고 있어서

 

 

읽으며 실습하는데 시간이 꽤 걸렸다

 

 

책의 흐름은 데이터 분석에 맞게 기술돼 있기 때문에

 

 

 

파이썬을 배우고 - 넘파이 - 판다스 - 데이터 로딩과 저장 후

 

 

본격적인 데이터 분석으로 들어간다

 

 

데이터 분석에서도

 

 

데이터 분석하는 방법만 나오는 게 아닌

 

 

NaN이 무엇인지

 

 

isna가 무엇인지

 

 

용어 설명도 함께 돼있어서 정말 좋았다

 

 

난이도 초중급이 읽기에 딱이었다

 

 

 

 

데이터에 누락된 데이터를 골라내거나,

 

 

데이터베이스 스타일리로 데이터 프레임을 합치는 등

 

 

정말 데이터 분석에 기본이 되는 내용들이 잘 기술돼 있었다

 

 

 

이외 시계열 기초, 파이썬 모델링, 데이터분석 예제, 고급 넘파이 까지 있어서

 

 

정말 두고두고 봐야 하는 데이터 분석의 교과서 같은 책이었다

 

 

이 책은 파이썬을 어느 정도라도 할 줄 알고

 

 

데이터 분석에 관심이 있거나 데이터 분석 쪽 직무를 원하는 사람이라면

 

 

누구에게든 추천할 책이다

 

 

 

여러분도 데이터 분석이 어려웠다면

 

 

[파이썬 라이브러리를 활용한 데이터 분석] 책으로 공부해 보자

 

 

 

 

 

 

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다

 

 

 



 

 

파이썬 입문자들에게는 좋을 것 같고,

나처럼 어느 정도 기초는 알지만 뭔가 부족하다는 느낌이 드는 사람들에게도 도움이 되는 책이다.

파이썬으로 핸들링할 때 뭔가 아쉬운 부분이 생기는 것 같다는 느낌이 드는 python 개발자라면 한 번 읽어보면 좋을 것 같다.

 

하지만 개발 및 분석에서 시간은 한정적으로 선택과 집중은 필수적이기 때문에,

더 고차원적인 스킬 습득을 희망한다면 이책 보다는 좀더 높은 책을 시도하는게 좋을 것 같긴 하다. 기초 및 근간에 충실한 책이다. 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."
파이썬 라이브러리를 활용한 데이터 분석

현대 사회에서 데이터 분석은 빼놓을 수 없다. 일상 생활에서도 같은 물건을 구매하기 위해서 수 많은 오픈 마켓을 돌아다니거나, 주식 차트를 보며 기영이를 찾는 과정 등 많은 활동들이 데이터 분석 과정 들이다. 물론 본격적인 데이터 분석은 눈으로 훑어보는 수준을 넘어서 아주 많은 정보들을 통해 합리적인 판단을 내릴 수 있도록 정제하고 종합하는 과정이다.

기영이 차트

간단한 데이터들은 메모장에 정리할 수 도 있지만, 복잡하거나 아주 많은 양의 데이터를 손쉽게 다루기 위해서는 도구가 필요하다. 데이터 분석을 위한 도구들은 다양하게 존재하는데 대표적으로는 프로그래밍 언어인 파이썬과 R이 많이 사용되고, 상용 프로그램으로는 엑셀 등 이 있다. 이 중에서 파이썬의 경우 공학적인 계산이나 앱, 웹, 그리고 게임 개발에도 사용되고, 딥러닝 분야에서도 핵심이 되는 언어이다.

"파이썬 라이브러리를 활용한 데이터 분석"은 파이썬에서 데이터 분석을 위한 핵심 라이브러리에 대해 알려준다. 파이썬은 다른 사람이 만들어 놓은 코드를 보다 손쉽게 가져다 쓸 수 있어 엄청 다양한 오픈소스들이 존재 한다. 그 중에서 데이터 분석으로 사용되는 것들이 바로 NumPy, Pandas, Matplotlib 등이 있다. 물론 이 외에도 데이터 분석에 사용할만한 다양한 라이브러리가 있지만, 가장 토대가 되고 사용자가 많은 라이브러리는 앞서 말한 세가지이다. 각각의 라이브러리들은 아래와 같은 특징을 갖고 있다.

  • NumPy: 행렬 연산을 다루기 위한 라이브러리, 내부적으론 저수준 언어로 구현되어 있어 속도가 빠름
  • Pandas: 대용량의 데이터를 다루기 위한 라이브러리
  • Matplotlib: 데이터 시각화를 위한 라이브러리

내가 하고 있는 일이 데이터 분석을 메인으로 하지는 않지만, 아주 많은 순간에 데이터를 보고 정제하고 시각화를 해야 한다. 이를 위해서 종종 파이썬을 활용하고는 있지만 필요할 때마다 검색을 통해 알게된 얕은 지식만 있었다. 이 책을 통해서 데이터 분석의 중심이 되는 라이브러리들에 대해 핵심을 파악할 수 있었다.

데이터 분석이라는 것이 필요하지만, 본격적으로 학습하기에는 부담스러운 경우 이 책을 통해서 기초적인 활용법을 통해 데이터 분석에 입문해보는 것도 아주 좋을 것 같다.


"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

데이터 분석의 좋은 예시를 가지고있다고 판단했고, 목차상의 내용도 나쁘지않았다.

다만 jupyter를 사용한다는것이 무엇인지 몰랐고, 무지에의한 선택이었다는것이 이책을 선택한 실패의 요인인듯하다.

개인적으로 참으로 보기어려운 책중에 하나가 되어 버렸다.

기본 환경 설정부터가 책 내용과 맞지않아 제법 해매었다.

참으로 힌들었던건, ipython과 같은 코딩 & 디버깅 방법을 사용한다는것이다,

아래에 참조 사진을 확인해보면 될듯하다.

소스코드와 결과가 나온 화면이다.

아마 이 그림림만으로는 이해를 못 할수도있겠다.

최초로 독학할때 잠깐 사용해본 방법이었고, 바로 python 기본 에디터를 사용하여 python 실습을 했었었다.

그래서인지, 이런 방식의 코드는 집중력을 떨어뜨리고, 실습또한 원활하지못하다는 느낌이 강했다.

응용도 불편하다는 선입견이 생길정도로 불편하다.

마음을 다잡아 실습을 해보는데, 쉽지않다.

그렇다고 내용이 나쁜것도 아니고, 경우에따라서는 프로그램 한줄 모르는이에게는 더 좋은 방법이라는것을 알고 있다.

파이썬 초보자에게는, 프로그램 초보자에게는 이게 얼마나 보기 좋을지도 알고 있다.

그러면 뭘하는가, 컴맹이면 이책만으로는 시작 조차 쉽지않을것 같다는 느낌을 강하게 받는다.

미안하다. 최악의 악평이다.

그리고 지독히도 주관적이며 편협한 서평이다.

거듭 미안하다.

 

서평을 않는게 더 좋았겠지만~

파이썬 데이터 분석 라이브러리의 기초를 다지기 위한 최고의 교재

 

IMG_3248.JPG

 

1. 이 책은 어떤 사람들을 위한 책인가요?

 

파이썬 라이브러리를 활용한 데이터 분석은 데이터 분석을 처음 시작하는 사람들을 위한 책입니다.

 

파이썬 설치부터 데이터 분석에 필요한 레벨의 문법까지 자세히 다루고 있고, 데이터 분석시 필수적으로 사용해야하는 넘파이(numpy), 판다스(pandas), 시각화 라이브러리인 맷플롯립(matplotlib), 통계분석 라이브러리인 스텟츠모델스(statsmodels)까지 자세히 다루고 있습니다. 

 

데이터 분석에 관심이 있고

파이썬 언어부터 분석에 필요한 필수 라이브러리들을

기초부터 탄탄하게 배우고 싶은 사람들에게 추천합니다. 

 

파이썬 기초부터 데이터 분석에 필요한 주요 라이브러리 사용법을 모두 설명하고 있기 때문에 따로 파이썬 교재, 판다스 교재, 등을 구매할 필요 없이 이 한권으로 모두 익힐 수 있습니다. 

 

구매시 주의해야 할 점은 이 책의 초점은 파이썬 언어와 데이터 전처리, 탐색적 데이터분석(EDA)를 위주로 다루고 있는 책이라는 점입니다. 즉, 사이킷런(Scikit-learn), 텐서플로(Tensorflow), 파이토치(Pytorch)와 같은 머신러닝/딥러닝 라이브러리에 대한 설명이 없고 데이터 분석 알고리즘에 대한 설명이 거의 없습니다. 

 

데이터 분석 알고리즘에 대해서 공부하고 싶다면 

[파이썬 라이브러리를 활용한 머신러닝] 이나 [혼자 공부하는 머신러닝 + 딥러닝] 같은 교재를 구매해야 합니다. 

 

 

2. 파이썬 라이브러리를 활용한 데이터분석 3판의 내용 구성

 

파이썬 라이브러리를 활용한 데이터 분석 3판은 696페이지 분량의 책으로 상당히 방대한 내용을 담고 있습니다. 13개의 챕터와 2개의 부록으로 구성되어 있는데요. 내용에 따라 다시 그룹을 지으면 약 10개의 내용으로 묶을 수 있습니다. 

 

챕터1 데이터분석을 위한 파이썬 및 라이브러리 설치

첫번째 챕터에서는 데이터 분석을 위한 언어인 파이썬을 설치하고 데이터분석에 필요한 넘파이, 판다스 같은 추가 패키지를 설치하는 내용이 자세히 소개되어 있습니다. 

 

챕터2-3 주피터 노트북 사용법과 파이썬프로그래밍 기초

챕터2와 3에서는 파이썬 코드를 작성할 수 있는 개발 환경 중 하나인 주피터 노트북 사용법과 파이썬 프로그래밍의 기초 문법을 자세히 소개합니다. 파이썬 문법 설명의 경우 따로 파이썬 책을 구매해서 공부하지 않아도 될 정도로 자세하고 데이터 분석에 꼭 필요한 내용들을 다루고 있어 좋았습니다. 

 

챕터 4 넘파이

챕터 4에서는 행렬 연산을 담당하는 라이브러리인 넘파이에 대해서 자세히 다룹니다. 넘파이를 너무 깊게 다루면 어렵게 느껴질 수 있어서 그런지 데이터 전처리와 EDA단계에서 쓸 수 있는 수준으로만 설명하고 있습니다. 대신 부록을 통해서 넘파이를 조금 더 깊게 다루고 있어서 추후에 딥러닝쪽으로 공부할 때도 활용할 수 있도록 하고 있습니다. 

 

챕터 5-8, 10 판다스

챕터 5부터는 판다스에 대해서 집중적으로 다루고 있습니다. 챕터를 나누긴 했지만 크게 보면 판다스의 기능을 나누어서 설명한 것입니다. 2023년4월 3일 판다스가 2.0으로 버전업 하면서 사라진 옵션이나 변경된 명령어 들이 많아졌는데 그 부분까지도 다 반영해서 나왔습니다. 

 

챕터 5에서는 판다스의 자료구조부터 데이터프레임을 조작하고 선택하고 통계적 계산을 하는 방법을 소개합니다. 

 

챕터 6에서는 판다스로 데이터를 로딩하고 전처리 하는 내용에 대해서 자세히 다룹니다. CSV 파일이나 Excel 파일을 불러오는 것 뿐만 아니라 API를 사용할 때 자주 보게 되는 JSON 이나 XML 형식의 데이터를 로딩하는 방법, HDF5 형식 까지 다양하고 자세하게 다룹니다. 또한 웹에서 직접 데이터를 크롤링해서 수집하는 내용, 데이터베이스에 연결해서 데이터를 가져오는 내용도 다루고 있습니다.

 

챕터 7은 판다스를 활용해서 데이터를 정제하는 데이터 전처리 방법에 대해서 자세히 다룹니다. 결측값, 이상값 처리, 중복제거, 이산화, 카테고리 자료형 사용법 등이 나옵니다. 

 

챕터 8은 판다스를 사용해서 2개 이상의 데이터 프레임을 합치거나 변형하는 방법에 대해서 소개하고 있습니다.  

 

챕터 10에서는 판다스를 이용한 그룹연산에 대해서 자세히 다루고 있습니다. 그룹연산(groupby)는 탐색적데이터분석에서 의미있는 결과를 찾아내는데 아주 중요한데 따로 챕터를 분리해 자세히 설명하고 있는 점이 좋았습니다. 

 

챕터 9 그래프 및 시각화

챕터 9에서는 그래프 및 시각화에 대해 다룹니다. 파이썬의 대표 시각화 라이브러리인 맷플롯립(matplotlib)에 대해서 자세히 다루고 있습니다. 

 

챕터 11 시계열 분석

챕터 11에서는 시계열 분석에 대한 내용을 소개하고 있습니다. 시계열 분석시 필수적으로 알아야 하는 파이썬의 시간 라이브러리인 datetime에 대한 자세한 소개부터 시작하여 판다스의 시계열 관련 함수들을 소개하며 시계열 자료를 다루는 방법에 대해서 상세하게 소개합니다. 

 

챕터 12 파이썬 모델링 라이브러리

챕터 12에서는 파이썬으로 회귀분석, 시계열분석, 분류분석등을 실시 할 때 사용할 수 있는 라이브러리를 소개하고 간단한 사용예를 제시합니다. 회귀분석과 시계열은 statsmodels, 그외 머신러닝 라이브러리로는 사이킷런(Scikit-learn)라이브러리 API 의 간단한 사용예를 보여줍니다. 단, 알고리즘에 대한 소개나 원리에 대한 설명은 하지 않고 있어 다른 책으로 추가 학습이 필요합니다. 

 

챕터 13 데이터분석 실습 예제 

챕터 13에서는 데이터분석 실습 예제를 5개 주고 이전 챕터에서 설명한 파이썬 기초 문법, 넘파이, 판다스를 사용해서 데이터를 읽어오고 전처리하고 시각화 하면서 탐색적 데이터분석을 실시하고 그 것에서 의미있는 정보를 추출하는 방법을 자세히 설명합니다. 

 

단, 다양한 형식의 데이터를 로딩 전처리 시각화 하는 것에 초점이 맞춰져있고(EDA만 다룸), 회귀나 분류, 군집 분석 등의 여러 머신러닝 알고리즘을 사용해 분석하지는 않습니다. 

사이킷런, statmodels에 대해 자세히 설명하고 있지 않기 때문에 다른 교재로 추가학습이 필요합니다. 

 

​AppendixA 고급 넘파이

파이썬 라이브러리를 활용한 데이터분석 3판에서는 부록을 2개 제공합니다. 첫 번째 부록은 고급 넘파이 부분입니다. ndarray 객체 구조에 대한 자세한 설명과 넘파이의 꽃인 브로드캐스팅, numba를 사용한 numpy 속도 향상시키기, memmap이나 hdf5를 활용한 대용량 데이터를 다루는 방법도 소개하고 있습니다. 

 

AppendixB IPython 시스템 더 알아보기

부록 B에서는 주피터 노트북에서 사용할 수 있는 다양한 명령어를 소개합니다. 특히 %와 함께 사용하는 매직 명령어를 자세히 소개하고 있어서 주피터 노트북을 사용해 코딩할 때 더 편리하게 해주는 기능을 공부하고 활용할 수 있습니다. 

 

3. 마무리

글의 시작에서도 이야기 했듯이 파이썬 라이브러리를 활용한 데이터 분석은 데이터 분석을 처음 시작하는 사람들을 위한 책입니다. 

 

데이터 분석에 관심이 있고 파이썬 언어부터 분석에 필요한 필수 라이브러리들을 기초부터 탄탄하게 배우고 싶은 사람들에게 추천합니다. 

 

다만, 이 책의 초점은 파이썬 언어와 데이터 전처리, 탐색적 데이터분석(EDA)를 위주로 다루고 있는 책이라 사이킷런(Scikit-learn), 텐서플로(Tensorflow), 파이토치(Pytorch)와 같은 머신러닝/딥러닝 라이브러리에 대한 설명이 없고 데이터 분석 알고리즘에 대한 설명이 거의 없습니다

 

데이터 분석 알고리즘에 대해서 공부하고 싶다면 

[파이썬 라이브러리를 활용한 머신러닝] 이나 [혼자 공부하는 머신러닝 + 딥러닝] 같은 교재를 구매해야 합니다. 

 

IMG_3578.JPG

 

 

데이터 분석을 처음 시작하고

파이썬과 데이터 분석에 꼭 필요한 판다스, 넘파이를 제대로 배우고 싶다면

아주 좋은 교재이고 기초를 아주 탄탄하게 다질 수 있을 것입니다. 

 

 

 


"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 

책을펼쳐서 3판 발행일을 보니 오호~ 초판이 발행되고 10년..

 

           

2023-05-03 책을 받았다. 따끈 따끈하다.~

이제 슬슬책을 읽어 볼까~~

다들아시겠지만 이렇게 생각하고 가볍게 읽을수 없는 책이다.

한꺼번에몰아서 보기 보단. 계획을 가지고 읽어야 다 읽을수 있다.

난 그렇게 해야 읽을 수 있다.  

총 기간 10일 왜냐면 내가 10 Chapter로 나누었다.

1~3장을 한번에 보고...4, 5, 6, 7, 8,9,10,11,12..... 서론은 항상 좀 가볍지 않은가... Reading 시작..

이 책서론에서 분명하게 말하고자 하는 내용이다.

어떤책인가? 참 중요한 내용이다. 이 책이 어떤 책인지 알고 읽어야 할것 아닌가? 

난 '데이터분석을 위한 도구를 사용해야 되는데 그 도구에 대한 설명서를 읽는다' 라고 생각하며 시작~~

 

Chapter2,3 부터는 기본적으로 알아야 할 내용 들로 쫘악 이어진다.~~

IPython, jupyter, '튜플', '리스트', '정렬','슬라이싱', '딕셔너리', '함수', '람다함수', '제너레이터', 'Itertools', 

'오류와 예외처리', '파일 처리' 까지 휴우~기초 내용이다. 윽~  드디어 4장 ~5장 넘파이와 판다스 거의 이책의 핵심이다.

자세히읽다 보면 고급 넘파이라고 "부록 A'로 별도 추가해 둘 정도 이니..

사실 나는 샘플 예제와 부록은 아직 시간적으로 Reading해보지 못했다. 언젠간 ...^^

 

4장 Numerical Python 넘파이(Numpy) - 산술계산을 위한가장 중요한 필수 패키지.

나는넘파이을 안다. 개념적으로 즉 아주 기초적으로 말이다. 잊지말아야 할 것은 지금 Reading하는 책은 

데이터를 다루는 넘파이가 중요하지않다는 말은 아니고 넘파이는배열과 배열 기반의 연산을 한다. 

정도만 알고 그냥 Reading 하고 판다스를 주로 사용할 것임을 알기에 .....깊게 고민 없이 훑어보았으면 한다.

5장 판다스 판다스 자료 구조 소개부터 시작 (Serial,DataFrame) ~ 요기는 좀 신경써서......^^

6장. 데이터 분석 및 조작.. 데이터 로딩 (여러 파일 타입) 즉데이터에 접근하는 방법을 알게 되고,

7장. 데이터 정제 및 준비 ..데이터 누락 처리, 중복제거, 데이터확장.. 효율적인 데이터를 준비하는 과정......

 

         

책에는주요 부분의 메서드나 중요함수 인수까지도 친절하게 나와 있다.

 

8장 .데이터 가공하는 작업..준비된 데이터를 합치고 재배열하는 (조인,병합, 변형)의 단계 원하는 형태로 가공하는 단계..

판다스를시작으로 데이터를 정제하고 재배열하고 가공하는 모든 일련의 과정은 시각화를 위한 것이 아닌가 싶다.

9장 드디어 그래프와 시각화를 주제로 설명하고 있다. 막대그래프 부터 ~산포도 까지 알차게 담아 내고있습니다.

시각화를통해 그래프가 그려질 즈음 ... 이게 되네~ ㅎㅎㅎㅎ

사실그래프는 데이터만 잘 만들어 져 있다면......

하지만 디테일이 필요한 시점이 온다 그렇기 때문에 컨트롤 할 줄 알아햐 한다. ^^​

10장. 데이터 집계와 그룹 연산을 다 보고 나면 과거 개발 당시 SQL쿼리로 구문 작성을 하다보면 

실제 몇 페이지 분량이 넘게 Edit 하기도 하고 연산 제약이 있어...복잡하고 어려웠는디...라는 생각이 든다. 

쉽다는 표현 보다. 잘 되어있다는 표현이.. 활용하기 좋겠다라는 표현이 맞을꺼 같다. 

휴우~~ 11장 시계열..12장 파이썬 모델링 라이브러리...까지...

드디어한권에서 배운 기술을 이용하는 데이터 분석 샘플 예제까지 해야 마무리다....​

 

이 책의10.6 마치며 부분에 이책의 결론이 나와 있는것 같아 인용했다.

결론판다스의 데이터 그룹화 도구를 이해 하고 마스터 한다면 데이터 분석을 위한 

데이터 정제, 모델링, 통계분석 작업시 많은 도움이 된다. 

파이썬을통해 데이터 분석을 하고자 하는 모든 이를 위한 책이다. ^^

여전히용어가 주는 불편함은 어쩔수 없는것인가...

데이터분석를 위한 도구 사용이 목적이더라도 프로그래밍 용어외에도 통계?? 

용어라고 해야 되나 암튼 ..생소한 하고 어려운 용어도 상당히 많다. ^^

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을제공받아 작성된 서평입니다."

 

나름 자극적인 문구와 함꼐 시작되는 CHAPTER 1 에서는 데이터 분석에 파이썬을 싸용하는 이유(스크립트 언어 - 작은 푸로그램이나 업무 자동화 스크립트를 빠르고 간단하게 만들 수 있게 도와줌)에 대해서 얘기하며 시작된다.

> 접착제처럼 쓰는 파이썬 - 타 언어와의 코드 통합이 용이

> 한 가지 언어만 사용 - 하나의 언어로 개발이 충분하여 범용성이 띄어남

그리고 이 책에서 다루게 될 기본적인 부분에 대해 정리해주는데, 특히 파이썬 기초 라이브러리와 쥬피터노트북 그리고 내장 자료 구조 및 함수. 파일 등에 대해 친절히 정리해주고 있다

> 넘파이 - Numericla Python - 파이썬 산술 계산의 주출돌 같은 라이브러리

> 판다스 - pandas - 구조화된 데이터나 표 ㅎ형식의 데이터를 직관적이고 유연하게 활용 가능

표 형태의 행과 열 이름을 가지는 DataFrame 과 1차원 배열 객체인 Series 가 있다

> 멧플롯립 - 2차원 데이터 시각화 생성

> IPython - 더 나은 대화형 파이썬 인터프리터 제공

> 주피터 - IPython 팀은 언어에 상관없이 대화형 컴퓨팅 도구를 설계할 수 있는 주피터 프로젝트 발표 > IPython 웹 노트북은 주피터 노트북으로 이름을 바꿔 40개가 넘는 프로그램 언어를 지원한다

> 사이파이 - 과학 계산 영역의 여러 기분 문제를 다루는 패키지

> 사이킷런 - 파이썬 개발자를 위한 범용 머신러닝 도구

> statsmodels - 통계분석 패키지

파이썬은 인터프리트 - 한 번에 하나의 명령어만 실행 - 언어

2장에서 IPython 과 주피터 노트북 활용에 실행 및 활용에 대해 안내해준다

파이썬은 가독성, 명료성, 명백함을 강조하는 언어. '실행 가능한 의사코드'라 표현하기도 함

들여쓰기 > 다른 많은 언어와는 다르게 중괄호 대신 공백 문자(탭 or 스페이스)를 사용해 코드를 구조화 한다.

팁! 기본 드려쓰기를 스페이스 4칸 > 텍스트 편집기는 탭 너비를 스페이스로 치환

모든 것은 객체

파이썬 언어의 중요한 특징 중 하나는 객체 모델의 일관성이다. 모든 숫자, 문자열, 자룍구조, 함수, 클래스, 모듈 등은 파이썬 인터프리터에서 파이썬 객체라 부르는 어떤 상자 안에 저장된다. 각 객제츠는 연관된 자료형과 내부 데이터를 갖는다. 실제로 이 특징은 심지어 함수마저도 하나의 객체로 간주함으로써 파이썬을 매우 유연한 언어로 만든다.

함수는 괄호와 0개 이상의 인수를 전달해서 호출할 수 있다. 반환되는 값은 선택적으로 변수에 대입할 수 있다. 파이썬의 거의 모든 객체는 함수를 포함하고 있는데 이를 메서드라 부르며, 메서드를 통해 객체의 내부 데이터에 접근할 수 있다.

동적 참조와 강한 타입

속성과 메서드

파이썬에서 객체는 일반적으로 그 객체 내부에 저장된 다른 파이썬 객체인 '속성;과 그 객체의 내부 데이터에 접근할 수 있는 함수인 '메서드'를 갖는다. 속서과 메서드는 obj.attribute_name 문법으로 접근할 수 있다.

덕 타이핑

객체의 자료형에는 관심이 없고 그 객체가 어떤 메서드나 행동을 지원하는지만 알고 싶은 경우가 있다. 이를 '덕 타이핑' 부른다. 어떤 개게가 이터레이프 프로토콜을 구현했다면 순회가 가능한 객체인지 검증할 수 있다, 대부분의 객체에는 __iter__ 라는 매직 메서드를 가지고 있는지 확인하면 된다.

모듈 import

파이썬에서 모듈은 파이썬 코드가 담긴 .py 파일이다. ex) from .. import

이항연산자

가변 객체와 불변 객체

리스트, 딕셔너리, 넘파이 배열 또는 사용자 정의 클래스 같은 대부분의 객체는 변경 가능하다. 즉, 객체나 값의 내용을 바꿀 수 있다. 단, 문자열이나 튜플은 변경 불가능하다. 즉, 내부 값은 변경할 수 없다.

스칼라 자료형

파이썬은 숫자 데이터와 문자열, 불리언 값 그리고 날짜와 시간을 다룰 수 있는 몇몇 내장 자료형을 제공한다. 이런 단일 값을 담는 타입을 스칼라 자료형이라고 부른다. 날짜와 시간을 다루는 방법은 표준 라이브러리의 datetime 모듈에서 제공하므로 이후에 설명한다.

for 문

for 문은 리스트나 튜플 같은 컬렉션이나 이터레이터를 순회한다. for 문의 기본 문법은 다음과 같다.

> for value in collection #여기서 value 변수를 사용할 수 있다

for 문은 break 예약어를 사용해서 빠져나갈 수 있으며, 가장 안 쪽에 있는 for 문만 빠져나가고 바깥쪽에 있는 for 문은 계속 실행된다.

while 문

while 문은 조건을 명시하고 해당 조건이 False가 되거나 break 문을 사용해서 명시적으로 반복이 끝날 때까지 블록 내의 코드를 수행한다

pass 는 파이썬에서 아무것도 하지 않음을 나타낸다. 혹은 아직 구현하지 않은 코드를 나중에 추가하기 위한 플레이스홀더로 활용하기도 한다. 블록 내에서 어떤 작업도 실행하지 않을 때 사용하며, 파이썬이 공백문자를 사용해 블록을 구분하는 경우에만 필요하다.

range

range 함수는 균일한 간격의 연속된 정수를 반환하는 이터레이터를 반환한다

딕셔너리

딕셔너리(dict)는 파이썬 내장 자료국조 중에서 가장 중요한 자료구조다. 딕셔너리는 키 - 값 쌍을 저장하며 키와 값은 모두 파이썬 객체다. 각 키는 값과 연관되어 특정 키가 주어지면 값을 편리하게 검색, 삽입, 수정 또는 삭제할 수 있다. 중괄호 {}를 사용해 콜론으로 구분된 키와 값을 둘러싸면 딕셔너리가 생성된다.

이상 CHAPTER 2~3 에서 주요한 내용에 대해 간략히 공부 겸 정리를 해보았다. 본격적으로 개발자의 길을 걷기 시작한지 3개월 여가 지나서인지 이제 좀 보이고 이해되는 부분들이 있어 나름 반가웠고, 왜 CHAPTER 1 에서 챕터 2~3을 왜 강조했는지 이해할 수 있었다.

CHAPTER 4 - Numpy / CHAPTER 5 - pandas 에 대한 설명이 이어졌으며 특히나 해당 챕터는 데이터 사이언스 과정 수강 중인지라 겹치는 부분이 많아 빠르게 진도를 나갈 수 있었다. 또 한 번 느꼈지만 pandas 는 활용도가 진짜 높은 것 같다!

CHAPTER 6 에서 데이터 로딩과 저장, 파일 형식 > CHAPTER 7 데이터 정제 및 준비 > CHAPTER 8 데이터 준비하기: 조인, 병합, 변형 > 9장 그래프와 시각화 > 10장 CHAPTER 데이터 집계와 그룹 연산 > 11장 시게열 > 12장 파이썬 모델링 라이브러리 > 13장 데이터 분석 예제 > 부록 으로 이어지는 구성이며, 챕터의 흐름만 보더라도 알겠지만 데이터 분석을 하는 과정에 따라 저리되어 있어

한 글자 한 글자 세세히 읽어도 당연히 좋겠지만 전체적인 흐름을 훑어본 후 실재 데이터를 트릿하면서 찾아보고, 참고하면 더 큰 효과를 발휘할 수 있을 것 같다는 생각을 했다. 물론 그럴거면 그냥 구글링을 하지라고 생각할 수 있지만 전반적인 큰 흐름을 함께 가져가면서 이해하고 문제를 분석하고 풀어나가는 것.

즉, 전체적인 숲을 보는 것과 그 상황상황에 대응/대처를 위해 나무 한그루 혹은 가지를 바라보며 데이터를 트릿하는 것은 큰 차이가 있을 것이라 생각되기에 이 책은 지금의 나에게 딱 필요하고, 또 큰 도움이 될 수 있는 책이 아닐까 생각된다.

처음 이 책을 받았을 때, 전문/기술서적이 대부분 그렇지만 그럼에도 불구하고 그 두께와 페이지 수에 압도될 수 밖에 없었다. 과연 이 책을 내가 읽을 수 있을까 하는 생각이 먼저 들 정도였으니.. 하지만 실재 쥬피터노트북을 활용하여 데이터를 만지고 있거나 트릿해보고자 도전 계획이 있으신 분이라면 생각보다 어렵지 않게 진도가 나갈 것이다.

너무나도 친절히 기초부터 쉬운 에제 그리고 그에 맞춘 설명까지 함께 하고 있으니 내가 당도한 문제를 풀고자 한다면 이 책은 큰 도움이 될 것이라 믿어 의심치 않는다. 뿐만 아니라 앞서 얘기한대로 CHAPTER 4부터는 데이터 트릿의 순서의 정석과 같은 흐름으로 책이 서술되어 있어 이 플로우에 맞춰 작업 혹은 실습을 해보아도 무방하리라 생각된다.

나와 같이 이제 막 개발 맛(?)을 느끼고 있는 초급 개발자들이라면, 그리고 파이썬과 쥬피터 노트북을 활용하여 데이터를 만지고 트릿하는데 관심이 있는 누구라도 이 책은 든든한 동반자가 되어 줄 것임에 분명하다. 왜냐하면 내가 몸소 부딪히고 맨 땅에 헤딩하면서 어째저째 겨우 만지고 있는 부분들이 이 책에 모조리 실려 있었기 때문이다. 워낙 분량이 많아 정독을 하기 어려울 수 있으나 케이스에 따라 찾아가며 따라간다면 그 또한 즐거운 시간이 되지 않을까 싶다. 

데이터 분석이나 AI 분야에 필요한 Python을 활용하는 기법의 핵심만 잘 정리한 책으로 여러 대학의 교과서로 채택된 만큼 관련 목적으로 가장 먼저 읽을 것을 권하고 싶은 책이기도 하다.

데이터 과학이 세간의 정의대로 “프로그래밍 + AI + 도메인”의 융합 분야라 가정한다면 이 책은 그 중 프로그래밍의 스킬을 습득하는 데 큰 도움이 되는 책이다.

AI분야에서 가장 인기있는 언어는 Python이며 Python의 기본 문법은 물론 라이브러리를 쉽고 빠르게 익히고 싶다면 가장 먼저 이 책을 읽을 것을 추천하고 싶다. 개인적으로는 몇년 전 2판을 보고 매우 큰 도움을 얻을 수 있었다. 이미 세계 유수 대학에서 교재로 활용되고 있거니와 AI 분야에 처음 진입하는 입문자에게 추천이 끊이지 않는 책이기도 하다.

2판과 기본적인 내용은 매우 유사하다. 다만, Python 3.11의 최신 버전을 기준으로 예제 코드들이 작성되어있다는 점이 다른 부분이다. 아무래도 2판은 3.6 버전이었기에 그새 추가된 편의 기능이 상당하다. 기타 부록이나 groupby와 내용 등 부분적으로 내용이 풍부해진 점도 눈에 띄였다.

기본적인 책의 내용 및 이 책만이 가지고 있는 특징을 중심으로 간단하게 책을 소개해보고자 한다.

우선 1 ~ 3장은 Python의 기초 지식에 대해 설명한다. Python의 현 위치, 기초 문법 및 내장 자료구조, 주피터 노트북을 다루는 방법이 소개되어있다.

Python은 R과 같은 특수목적 언어가 아니라 범용 언어이기 때문에 연구 및 포팅 과정을 분리할 필요없고 Glue 코드로 C언어와 같은 저수준 호환이 가능하여 데이터 분야에 지속적인 성장중이라는 사실과 GIL과 같은 단일스레드 특성 그 외에도 오늘날 Python의 위상을 가능케한 강력한 라이브러리 - Numpy, Pandas, SciPy, scikit-learn 등 -의 개요를 소개하고 설치 및 간단한 예제를 실습한다.

이어서 Python 실습 환경 중 가장 애용되는 주피터 노트북을 실습한다. “?”를 통해 객체의 정보를 얻는 등의 팁도 소개되어있다. 맨 뒤 부록편에 IPython의 심화과정이 이어지니 이미 주피터 노트북을 많이 다뤄본 독자라면 부록편을 먼저 읽는 것도 나쁘지 않을듯하다.IPython

부록편에는 알아두면 매우 유용한 단축키, 매직명령어, 명령어 히스토리, 북마크 기능 등이 소개되어있어 제대로 익히면 개발 속도를 몇 배는 높일 수 있을 것이다.

개인적으로는 대화형 디버깅 및 프로파일링 기능에 대한 소개가 큰 도움이 되었다. 간결한 예제