파이썬 라이브러리를 활용한 데이터 분석(2판): 영화 평점, 이름 통계, 선거 데이터 등 실사례 사용

Book description

이 책은 NumPy, pandas, matplotlib, IPython, Jupyter 등 다양한 파이썬 라이브러리를 사용해서 효과적으로 데이터를 분석하는 방법을 알려준다. pandas의 새로운 기능뿐만 아니라 메모리 사용량을 줄이고 성능을 개선하는 고급 사용법까지 다룬다. 또한 모델링 도구인 statsmodels와 scikit-learn 라이브러리도 소개한다. 연대별 이름 통계 자료, 미 대선 데이터베이스 자료 등 실사례로 따라 하다 보면 어느덧 여러분도 데이터에 알맞게 접근하고 효과적으로 분석하는 전문가가 될 것이다.

Table of contents

  1. 파이썬 라이브러리를 활용한 데이터 분석 2판
    1. 지은이·옮긴이 소개
    2. 옮긴이의 말
    3. 2판에 새로 추가된 내용
    4. 감사의 글
    5. 차례 (1/3)
    6. 차례 (2/3)
    7. 차례 (3/3)
  2. 1장 시작하기 전에
    1. 1.1 이 책에서 다루는 내용
      1. 1.1.1 어떤 데이터를 사용하나
    2. 1.2 왜 데이터 분석에 파이썬을 사용하나
      1. 1.2.1 접착제처럼 쓰는 파이썬
      2. 1.2.2 한 가지 언어만 사용하자
      3. 1.2.3 파이썬을 사용하면 안 되는 경우
    3. 1.3 필수 파이썬 라이브러리
      1. 1.3.1 NumPy
      2. 1.3.2 pandas
      3. 1.3.3 matplotlib
      4. 1.3.4 IPython과 Jupyter
      5. 1.3.5 SciPy
      6. 1.3.6 scikit-learn
      7. 1.3.7 statsmodels
    4. 1.4 설치 및 설정
      1. 1.4.1 윈도우
      2. 1.4.2 애플(OS X, macOS)
      3. 1.4.3 GNU/리눅스
      4. 1.4.4 파이썬 패키지 설치하고 업데이트하기
      5. 1.4.5 파이썬 2와 파이썬 3
      6. 1.4.6 통합 개발 환경과 텍스트 편집기
    5. 1.5 커뮤니티와 컨퍼런스
    6. 1.6 이 책을 살펴보는 방법
      1. 1.6.1 코드 예제
      2. 1.6.2 예제에 사용된 데이터
      3. 1.6.3 import 컨벤션
      4. 1.6.4 용어
  3. 2장 파이썬 언어의 기본, IPython, 주피터 노트북
    1. 2.1 파이썬 인터프리터
    2. 2.2 IPython 기초
      1. 2.2.1 IPython 셸 실행하기
      2. 2.2.2 주피터 노트북 실행하기
      3. 2.2.3 탭 자동완성
      4. 2.2.4 자기관찰
      5. 2.2.5 %run 명령어
      6. 2.2.6 클립보드에 있는 코드 실행하기
      7. 2.2.7 키보드 단축키
      8. 2.2.8 매직 명령어
      9. 2.2.9 matplotlib 통합
    3. 2.3 파이썬 기초
      1. 2.3.1 시맨틱 (1/2)
      2. 2.3.1 시맨틱 (2/2)
      3. 2.3.2 스칼라형 (1/2)
      4. 2.3.2 스칼라형 (2/2)
      5. 2.3.3 흐름 제어 (1/2)
      6. 2.3.3 흐름 제어 (2/2)
  4. 3장 내장 자료구조, 함수, 파일
    1. 3.1 자료구조와 순차 자료형
      1. 3.1.1 튜플
      2. 3.1.2 리스트 (1/2)
      3. 3.1.2 리스트 (2/2)
      4. 3.1.3 내장 순차 자료형 함수
      5. 3.1.4 사전
      6. 3.1.5 집합
      7. 3.1.6 리스트, 집합, 사전 표기법
    2. 3.2 함수
      1. 3.2.1 네임스페이스, 스코프, 지역 함수
      2. 3.2.2 여러 값 반환하기
      3. 3.2.3 함수도 객체다
      4. 3.2.4 익명 함수
      5. 3.2.5 커링: 일부 인자만 취하기
      6. 3.2.6 제너레이터
      7. 3.2.7 에러와 예외 처리
    3. 3.3 파일과 운영체제
      1. 3.3.1 바이트와 유니코드
    4. 3.4 마치며
  5. 4장 NumPy 기본: 배열과 벡터 연산
    1. 4.1 NumPy ndarray: 다차원 배열 객체
      1. 4.1.1 ndarray 생성하기
      2. 4.1.2 ndarray의 dtype
      3. 4.1.3 NumPy 배열의 산술 연산
      4. 4.1.4 색인과 슬라이싱 기초 (1/2)
      5. 4.1.4 색인과 슬라이싱 기초 (2/2)
      6. 4.1.5 불리언값으로 선택하기
      7. 4.1.6 팬시 색인
      8. 4.1.7 배열 전치와 축 바꾸기
    2. 4.2 유니버설 함수: 배열의 각 원소를 빠르게 처리하는 함수
    3. 4.3 배열을 이용한 배열지향 프로그래밍
      1. 4.3.1 배열 연산으로 조건절 표현하기
      2. 4.3.2 수학 메서드와 통계 메서드
      3. 4.3.3 불리언 배열을 위한 메서드
      4. 4.3.4 정렬
      5. 4.3.5 집합 관련 함수
    4. 4.4 배열 데이터의 파일 입출력
    5. 4.5 선형대수
    6. 4.6 난수 생성
    7. 4.7 계단 오르내리기 예제
      1. 4.7.1 한 번에 시뮬레이션하기
    8. 4.8 마치며
  6. 5장 pandas 시작하기
    1. 5.1 pandas 자료구조 소개
      1. 5.1.1 Series
      2. 5.1.2 DataFrame (1/2)
      3. 5.1.2 DataFrame (2/2)
      4. 5.1.3 색인 객체
    2. 5.2 핵심 기능
      1. 5.2.1 재색인
      2. 5.2.2 하나의 로우나 컬럼 삭제하기
      3. 5.2.3 색인하기, 선택하기, 거르기 (1/2)
      4. 5.2.3 색인하기, 선택하기, 거르기 (2/2)
      5. 5.2.4 정수 색인
      6. 5.2.5 산술 연산과 데이터 정렬 (1/2)
      7. 5.2.5 산술 연산과 데이터 정렬 (2/2)
      8. 5.2.6 함수 적용과 매핑
      9. 5.2.7 정렬과 순위
      10. 5.2.8 중복 색인
    3. 5.3 기술 통계 계산과 요약
      1. 5.3.1 상관관계와 공분산
      2. 5.3.2 유일값, 값 세기, 멤버십
    4. 5.4 마치며
  7. 6장 데이터 로딩과 저장, 파일 형식
    1. 6.1 텍스트 파일에서 데이터를 읽고 쓰는 법
      1. 6.1.1 텍스트 파일 조금씩 읽어오기
      2. 6.1.2 데이터를 텍스트 형식으로 기록하기
      3. 6.1.3 구분자 형식 다루기
      4. 6.1.4 JSON 데이터
      5. 6.1.5 XML과 HTML: 웹 스크래핑
    2. 6.2 이진 데이터 형식
      1. 6.2.1 HDF5 형식 사용하기
      2. 6.2.2 마이크로소프트 엑셀 파일에서 데이터 읽어오기
    3. 6.3 웹 API와 함께 사용하기
    4. 6.4 데이터베이스와 함께 사용하기
    5. 6.5 마치며
  8. 7장 데이터 정제 및 준비
    1. 7.1 누락된 데이터 처리하기
      1. 7.1.1 누락된 데이터 골라내기
      2. 7.1.2 결측치 채우기
    2. 7.2 데이터 변형
      1. 7.2.1 중복 제거하기
      2. 7.2.2 함수나 매핑을 이용해서 데이터 변형하기
      3. 7.2.3 값 치환하기
      4. 7.2.4 축 색인 이름 바꾸기
      5. 7.2.5 개별화와 양자화
      6. 7.2.6 특잇값을 찾고 제외하기
      7. 7.2.7 치환과 임의 샘플링
      8. 7.2.8 표시자/더미 변수 계산하기
    3. 7.3 문자열 다루기
      1. 7.3.1 문자열 객체 메서드
      2. 7.3.2 정규 표현식
      3. 7.3.3 pandas의 벡터화된 문자열 함수
    4. 7.4 마치며
  9. 8장 데이터 준비하기: 조인, 병합, 변형
    1. 8.1 계층적 색인
      1. 8.1.1 계층의 순서를 바꾸고 정렬하기
      2. 8.1.2 계층별 요약 통계
      3. 8.1.3 DataFrame의 컬럼 사용하기
    2. 8.2 데이터 합치기
      1. 8.2.1 데이터베이스 스타일로 DataFrame 합치기
      2. 8.2.2 색인 병합하기
      3. 8.2.3 축 따라 이어붙이기 (1/2)
      4. 8.2.3 축 따라 이어붙이기 (2/2)
      5. 8.2.4 겹치는 데이터 합치기
    3. 8.3 재형성과 피벗
      1. 8.3.1 계층적 색인으로 재형성하기
      2. 8.3.2 긴 형식에서 넓은 형식으로 피벗하기
      3. 8.3.3 넓은 형식에서 긴 형식으로 피벗하기
    4. 8.4 마치며
  10. 9장 그래프와 시각화
    1. 9.1 matplotlib API 간략하게 살펴보기
      1. 9.1.1 figure와 서브플롯
      2. 9.1.2 색상, 마커, 선 스타일
      3. 9.1.3 눈금, 라벨, 범례
      4. 9.1.4 주석과 그림 추가하기
      5. 9.1.5 그래프를 파일로 저장하기
      6. 9.1.6 matplotlib 설정
    2. 9.2 pandas에서 seaborn으로 그래프 그리기
      1. 9.2.1 선그래프
      2. 9.2.2 막대그래프 (1/2)
      3. 9.2.2 막대그래프 (2/2)
      4. 9.2.3 히스토그램과 밀도 그래프
      5. 9.2.4 산포도
      6. 9.2.5 패싯 그리드와 범주형 데이터
    3. 9.3 다른 파이썬 시각화 도구
    4. 9.4 마치며
  11. 10장 데이터 집계와 그룹 연산
    1. 10.1 GroupBy 메카닉
      1. 10.1.1 그룹 간 순회하기
      2. 10.1.2 컬럼이나 컬럼의 일부만 선택하기
      3. 10.1.3 사전과 Series에서 그룹핑하기
      4. 10.1.4 함수로 그룹핑하기
      5. 10.1.5 색인 단계로 그룹핑하기
    2. 10.2 데이터 집계
      1. 10.2.1 컬럼에 여러 가지 함수 적용하기
      2. 10.2.2 색인되지 않은 형태로 집계된 데이터 반환하기
    3. 10.3 Apply: 일반적인 분리-적용-병합
      1. 10.3.1 그룹 색인 생략하기
      2. 10.3.2 변위치 분석과 버킷 분석
      3. 10.3.3 예제: 그룹에 따른 값으로 결측치 채우기
      4. 10.3.4 예제: 랜덤 표본과 순열
      5. 10.3.5 예제: 그룹 가중 평균과 상관관계
      6. 10.3.6 예제: 그룹상의 선형회귀
    4. 10.4 피벗테이블과 교차일람표
      1. 10.4.1 교차일람표
    5. 10.5 마치며
  12. 11장 시계열
    1. 11.1 날짜, 시간 자료형, 도구
      1. 11.1.1 문자열을 datetime으로 변환하기
    2. 11.2 시계열 기초
      1. 11.2.1 색인, 선택, 부분 선택
      2. 11.2.2 중복된 색인을 갖는 시계열
    3. 11.3 날짜 범위, 빈도, 이동
      1. 11.3.1 날짜 범위 생성하기
      2. 11.3.2 빈도와 날짜 오프셋
      3. 11.3.3 데이터 시프트
    4. 11.4 시간대 다루기
      1. 11.4.1 시간대 지역화와 변환
      2. 11.4.2 시간대를 고려해서 Timestamp 객체 다루기
      3. 11.4.3 다른 시간대 간의 연산
    5. 11.5 기간과 기간 연산
      1. 11.5.1 Period의 빈도 변환
      2. 11.5.2 분기 빈도
      3. 11.5.3 타임스탬프와 기간 서로 변환하기
      4. 11.5.4 배열로 PeriodIndex 생성하기
    6. 11.6 리샘플링과 빈도 변환
      1. 11.6.1 다운샘플링
      2. 11.6.2 업샘플링과 보간
      3. 11.6.3 기간 리샘플링
    7. 11.7 이동창 함수
      1. 11.7.1 지수 가중 함수
      2. 11.7.2 이진 이동창 함수
      3. 11.7.3 사용자 정의 이동창 함수
    8. 11.8 마치며
  13. 12장 고급 pandas
    1. 12.1 Categorical 데이터
      1. 12.1.1 개발 배경과 동기
      2. 12.1.2 pandas의 Categorical
      3. 12.1.3 Categorical 연산
      4. 12.1.4 Categorical 메서드
    2. 12.2 고급 GroupBy 사용
      1. 12.2.1 그룹 변환과 GroupBy 객체 풀어내기
      2. 12.2.2 시계열 그룹 리샘플링
    3. 12.3 메서드 연결 기법
      1. 12.3.1 pipe 메서드
    4. 12.4 마치며
  14. 13장 파이썬 모델링 라이브러리
    1. 13.1 pandas와 모델 코드의 인터페이스
    2. 13.2 Patsy를 이용해서 모델 생성하기
      1. 13.2.1 Patsy 용법으로 데이터 변환하기
      2. 13.2.2 범주형 데이터와 Patsy
    3. 13.3 statsmodels 소개
      1. 13.3.1 선형 모델 예측하기
      2. 13.3.2 시계열 처리 예측
    4. 13.4 scikit-learn 소개
    5. 13.5 더 공부하기
  15. 14장 데이터 분석 예제
    1. 14.1 Bit.ly의 1.USA.gov 데이터
      1. 14.1.1 순수 파이썬으로 표준시간대 세어보기
      2. 14.1.2 pandas로 표준시간대 세어보기 (1/2)
      3. 14.1.2 pandas로 표준시간대 세어보기 (2/2)
    2. 14.2 MovieLens의 영화 평점 데이터 (1/2)
    3. 14.2 MovieLens의 영화 평점 데이터 (2/2)
      1. 14.2.1 평점 차이 구하기
    4. 14.3 신생아 이름 (1/2)
    5. 14.3 신생아 이름 (2/2)
      1. 14.3.1 이름 유행 분석 (1/3)
      2. 14.3.1 이름 유행 분석 (2/3)
      3. 14.3.1 이름 유행 분석 (3/3)
    6. 14.4 미국농무부 영양소 정보 (1/2)
    7. 14.4 미국농무부 영양소 정보 (2/2)
    8. 14.5 2012년 연방선거관리위원회 데이터베이스
      1. 14.5.1 직업 및 고용주에 따른 기부 통계
      2. 14.5.2 기부금액
      3. 14.5.3 주별 기부 통계
    9. 14.6 마치며
  16. 부록 A 고급 NumPy
    1. A.1 ndarray 객체 구조
      1. A.1.1 NumPy dtype 구조
    2. A.2 고급 배열 조작 기법
      1. A.2.1 배열 재형성하기
      2. A.2.2 C 순서와 포트란 순서
      3. A.2.3 배열 이어붙이고 나누기
      4. A.2.4 원소 반복하기: repeat와 tile
      5. A.2.5 팬시 색인: take와 put
    3. A.3 브로드캐스팅
      1. A.3.1 다른 축에 대해 브로드캐스팅하기
      2. A.3.2 브로드캐스팅을 이용해서 배열에 값 대입하기
    4. A.4 고급 ufunc 사용법
      1. A.4.1 ufunc 인스턴스 메서드
      2. A.4.2 파이썬으로 사용자 정의 ufunc 작성하기
    5. A.5 구조화된 배열과 레코드 배열
      1. A.5.1 중첩된 dtype과 다차원 필드
      2. A.5.2 구조화된 배열을 써야 하는 이유
    6. A.6 정렬에 관하여
      1. A.6.1 간접 정렬: argsort와 lexsort
      2. A.6.2 대안 정렬 알고리즘
      3. A.6.3 배열 일부만 정렬하기
      4. A.6.4 numpy.searchsorted: 정렬된 배열에서 원소 찾기
    7. A.7 Numba를 이용하여 빠른 NumPy 함수 작성하기
      1. A.7.1 Numba를 이용한 사용자 정의 numpy.ufunc 만들기
    8. A.8 고급 배열 입출력
      1. A.8.1 메모리 맵 파일
      2. A.8.2 HDF5 및 기타 배열 저장 옵션
    9. A.9 성능 팁
      1. A.9.1 인접 메모리의 중요성
  17. 부록 B IPython 시스템 더 알아보기
    1. B.1 명령어 히스토리 사용하기
      1. B.1.1 명령어 검색과 재사용
      2. B.1.2 입출력 변수
    2. B.2 운영체제와 함께 사용하기
      1. B.2.1 셸 명령어와 별칭
      2. B.2.2 디렉터리 북마크 시스템
    3. B.3 소프트웨어 개발 도구
      1. B.3.1 대화형 디버거
      2. B.3.2 실행 시간 측정: %time과 %timeit
      3. B.3.3 기본적인 프로파일링: %prun과 %run -p
      4. B.3.4 함수의 각 줄마다 프로파일링하기
    4. B.4 IPython을 이용한 생산적인 코드 개발에 관한 팁
      1. B.4.1 모듈 의존성 리로딩하기
      2. B.4.2 코드 설계 팁
    5. B.5 IPython 고급 기능
      1. B.5.1 IPython 친화적인 클래스 만들기
      2. B.5.2 프로파일과 설정
    6. B.6 마치며
  18. 찾아보기 (1/2)
  19. 찾아보기 (2/2)

Product information

  • Title: 파이썬 라이브러리를 활용한 데이터 분석(2판): 영화 평점, 이름 통계, 선거 데이터 등 실사례 사용
  • Author(s): 김영근, 웨스 맥키니
  • Release date: June 2019
  • Publisher(s): Hanbit Media, Inc.
  • ISBN: 9791162241905