파이썬과 수치 해석 (파이썬 수치 해석 레시피 | 2 판)

파이썬과 수치 해석 (파이썬 수치 해석 레시피 | 2 판)

$51.49
Description
Python을 사용해 과학과 공학 분야에 빈번히 등장하는 연산 문제를 해결하는 방법을 설명한다. Python 과학 연산 모듈인 Scipy, 배열처리 기본 모듈인 NumPy, 데이터 처리를 위한 기본 모듈인 Pandas, 머신 러닝을 위한 Scikit-learn을 중심으로 과학 연산을 처리할 수 있는 두 가지 중요한 기법인 기호적, 수치적 처리 기법을 사용하는 데 Python을 어떻게 활용할 수 있는지 자세히 설명한다.
행렬 및 희소 행렬, 벡터, 상미분과 편미분, 적분, 인수분해, 시계열, 선형 대수, 통계 모델링, 머신 러닝, 신호처리 등 이공계의 대표적 문제들을 해결하는 데 Python을 어떻게 활용할 수 있는지 풍부한 예제를 통해 상세히 설명한다.
책 후반부는 HDF5를 포함해 데이터 처리를 위한 다양한 파일 입출력 형식을 알아보고, 코드의 실행 성능 향상을 위한 코드 최적화와 함께 모듈 설치법도 상세히 설명한다.
저자

로버트요한슨

스웨덴찰머스(Chalmers)공대의이론물리학박사학위를받은숙련된Python프로그래머겸전산학자다.학계,산업계의과학컴퓨팅분야에서10년이상일했고오픈소스개발과독점적연구프로젝트에참여했다.
오픈소스에기여한부분으로는양자시스템의역학을시뮬레이션하기위한인기있는Python프레임워크인QuTiP에대한연구와과학컴퓨팅환경에서인기있는Python라이브러리가있다.과학컴퓨팅과소프트웨어개발에열정을쏟고있으며이분야들을최적의결과로결합시키기위한모범사례,즉새롭고재현가능하며확장가능한컴퓨터결과를가르치고전달하는데전념하고있다.이론물리학과컴퓨터물리학분야에서5년간박사후과정을거쳤으며현재IT업계에서데이터과학자로일하고있다.

목차

지은이소개
기술감수자소개
옮긴이소개
옮긴이의말
들어가며

1장.Python을이용한컴퓨팅소개
__Python을이용한컴퓨팅환경
__Python
____인터프리터
__IPython콘솔
____입출력캐싱
____자동완성및객체인트로스펙션
____문서
____시스템셸과의상호작용
____IPython확장
__Jupyter
____JupyterQtConsole
____JupyterNotebook
____Jupyter랩
____셀유형
____셀편집하기
____마크다운셀
____리치출력디스플레이
____nbconvert
__Spyder통합개발환경
____소스코드편집기
____Spyder에있는콘솔
____객체검사기
__요약
__추가참고도서목록
__참고문헌

2장.벡터,행렬,다차원배열
__모듈임포트하기
__NumPy배열객체
____데이터유형
____메모리내배열데이터순서
__배열만들기
____리스트나다른유사-배열객체에서생성된배열
____일정한값으로채운배열
____증분시퀀스로채운배열
____로그시퀀스로채워진배열
____Meshgrid배열
____초기화되지않은배열만들기
____다른배열의특성으로배열만들기
____행렬만들기
__인덱싱및슬라이싱
____1차원배열
____다차원배열
____뷰
____팬시인덱싱과부울값인덱싱
__재형상과크기변경
__벡터화식
____산술연산
____원소별함수
____집계함수
____부울배열과조건부식
____집합연산
____배열연산
__행렬과벡터연산
__요약
__추가참고도서목록
__참고문헌

3장.기호연산
__SymPy임포트하기
__기호들
____숫자들
__식
__식다루기
____단순화
____확장
____인수분해모음및병합
____분리,묶기,제거
____치환
__수치계산
____미적분
____도함수
____적분
____계열
____극한
____합과곱
__방정식
__선형대수학
__요약
__추가참고도서목록
__참고문헌

4장.도식화와시각화3
__모듈임포트하기
__시작하기
____대화형및비대화형모드
__Figure
__Axes
____도식유형
____선속성
____범례
____텍스트서식및주석
____축특성
__고급Axes레이아웃
____인셋
____부도면
____Subplot2grid
____GridSpec
__컬러맵도식화
__3D도면
__요약
__추가참고도서목록
__참고문헌

5장.방정식풀이
__모듈임포트하기
__선형연립방정식
____정방시스템
____비정방방정식
__고윳값문제
__비선형방정식
____단변량방정식
____비선형연립방정식
__요약
__추가참고도서목록
__참고문헌

6장.최적화
__모듈임포트하기
__최적화문제분류
__일변량최적화
__제약없는다변량최적화
__비선형최소자승문제
__제약조건최적화
____선형프로그래밍
__요약
__추가참고도서목록
__참고문헌

7장.보간법
__모듈임포트하기
__보간법
__다항식
__다항식보간
__스플라인보간
__다변량보간법
__요약
__추가참고도서목록
__참고문헌

8장.적분
__모듈임포트하기
__수치적적분법
__Scipy와의수치적적분
____표로된피적분함수
__다중적분
__기호와임의-정밀도적분
____선적분
__적분변환
__요약
__추가참고도서목록
__참고문헌

9장.ODE
__모듈임포트하기
__ODE
__ODE의기호적해법
____방향장
____라플라스변환을이용한ODE해결
__ODE해결을위한수치적인방법
__Scipy를이용한ODE의수치적적분
__요약
__추가참고도서목록
__참고문헌

10장.희소행렬과그래프
__모듈임포트하기
__Scipy의희소행렬
____희소행렬생성함수
____희소선형대수함수
____선형연립방정식
____그래프와네트워크
__요약
__추가참고도서목록
__참고문헌

11장.PDE
__모듈임포트하기
__PDE
__FDMs
__FEM
____FEM라이브러리조사
__FENiCS를이용해PDE해결하기
__요약
__추가참고도서목록
__참고문헌

12장.데이터처리및분석
__모듈임포트하기
__Pandas소개
____Series
____DataFrame
____시계열
__Seaborn그래픽라이브러리
__요약
__추가참고도서목록
__참고문헌

13장.통계학
__모듈임포트하기
__통계및확률리뷰
__랜덤수
__확률변수및분포
__가설검정
__비매개변수기법
__요약
__추가참고도서목록
__참고문헌

14장.통계모델링
__모듈임포트하기
__통계모델링소개
__Patsy를이용한통계모델정의
__선형회귀
____예제데이터셋
__이산회귀분석
____로지스틱회귀
____푸아송모델
__시계열
__요약
__추가참고도서목록
__참고문헌

15장.머신러닝
__모듈임포트하기
__머신러닝에대한간략한리뷰
__회귀
__분류
__클러스터링
__요약
__추가참고도서목록
__참고문헌

16장.베이즈통계
__모듈임포트하기
__베이즈통계소개
__모델정의
____사후분포표본추출
____선형회귀
__요약
__추가참고도서목록
__참고문헌

17장.신호처리
__모듈임포트하기
__스펙트럼분석
____푸리에변환
____윈도우
____스펙트로그램
__신호필터
____컨벌루션필터
____FIR및IIR필터
__요약
__추가참고도서목록
__참고문헌

18장.데이터입출력
__모듈임포트하기
__쉼표-구분값
__HDF5
____h5py
____PyTables
____PandasHDFStore
__JSON
__직렬화
__요약
__추가참고도서목록
__참고문헌

19장.코드최적화
__모듈임포트하기
__Numba
__Cython
__요약
__추가참고도서목록
__참고문헌

부록.코드최적화
__설치
__Miniconda와Conda
__완벽한환경
__요약
__추가참고도서목록

찾아보기

출판사 서평

★이책에서다루는내용★

■Numpy를사용한벡터와행렬작업
■Matplotlib를사용한도식화와시각화
■PandasandSciPy를사용한데이터분석과제
■statsmodels과scikit-learn를사용한통계모델링과머신러닝리뷰
■Numba와Cython을사용한파이썬코드최적화

★이책의구성★

1장,‘Python을이용한컴퓨팅소개’에서는과학컴퓨팅에대한일반적인원칙과Python계산작업에사용할수있는주요개발환경을소개한다.즉IPython과대화형Python프롬프트,뛰어난JupyterNotebook응용과Spyder통합개발환경(SpyderIDE,SpyderIntegratedDevelopmentEnvironment)에초점을맞추고있다.
2장,‘벡터,행렬,다차원배열’에서는NumPy라이브러리를소개하고좀더일반적인배열기반연산과장점을알아본다.
3장,‘기호연산’에서는SymPy라이브러리를사용한기호연산에대해알아본다.이방법은배열기반연산을보완해준다.
4장,‘도식화와시각화’에서는Matplotlib라이브러리를이용한도식화와시각화를다룬다.2장에서4장까지는전반적으로책나머지부분의영역별문제에사용될기본계산도구인수치연산,기호연산,시각화에대해알아본다.
5장,‘방정식풀이’에서는방정식해결로Scipy와SymPy라이브러리를사용해수치적?기호적방법을모두살펴본다.
6장,‘최적화’에서는방정식해결과제의자연스러운연장인최적화를탐구한다.주로Scipy라이브러리와cvxopt라이브러리를사용해작업한다.
7장,‘보간법’에서는그자체로많은응용을가진또다른기본적인수학적방법인보간법,고급알고리즘과기법에서의주요역할을다룬다.
8장,‘적분’에서는수치적,기호적적분을살펴본다.5장부터8장까지는모든종류의컴퓨터작업에만연한핵심컴퓨터기술을다룬다.8장에서다루는방법은대부분Scipy라이브러리에서제공된다.
9장,‘ODE’에서는상미분방정식을다룬다.
10장,‘희소행렬과그래프’에서는11장을설명하기위해희소행렬과그래프기법을살펴본다.
11장,‘PDE’에서는개념적으로상미분방정식과밀접한관계가있지만10장의주제인희소행렬의도입이필요한PDE를살펴본다.
12장,‘데이터처리및분석’에서는데이터분석과통계조사를살펴본다.Pandas라이브러리와데이터분석프레임워크를소개한다.
13장,‘통계학’에서는SciPystats패키지의기본적인통계분석과기법을다룬다.
14장,‘통계모델링’에서는statsmodels라이브러리를사용해통계모델링을알아본다.
15장,‘머신러닝’에서는scikit-learn라이브러리를이용한머신러닝을알아보고통계와데이터분석의주제를살펴본다.
16장,‘베이즈통계’는베이즈통계와PyMC라이브러리를알아보면서이와관련된장을정리한다.12장부터16장까지는통계와데이터분석의광범위한분야를소개한다.이는최근몇년동안과학Python커뮤니티안팎에서급속히발전해온분야이기도하다.
17장,‘신호처리’에서는잠시과학컴퓨팅의핵심주제인신호처리로돌아간다.
18장,‘데이터입출력’에서는데이터입출력그리고파일에수치데이터를읽고쓰는몇가지방법을살펴본다.이는대부분의컴퓨터작업에필요한기본적인주제다.
19장,‘코드최적화’는Numba와Cython라이브러리를이용해Python코드의속도를높이는두가지방법을소개한다.
부록에는이책에서사용한소프트웨어설치방법이수록돼있다.필요한소프트웨어(대부분의Python라이브러리)를설치하기위해Conda패키지매니저를이용한다.Conda는안정적이고재현가능한컴퓨터환경을만들기위한중요한주제로,가상적이며격리된Python환경을만드는데도사용될수있다.또한Conda패키지매니저를사용해이런환경을설정하는방법도살펴본다.

★옮긴이의말★

수치해석알고리즘을공부해본사람이라면『NumericalRecipes』(WilliamPress,2007)를잘알고있을것이다.이책은‘NumericalRecipesinPython’이라는별명을붙여도될만큼Python을사용한과학컴퓨팅에있어이와유사한수준의정교하고깊이있는설명이담겨있다.
SciPy,NumPy를기반으로수많은과학및공학문제를Python을이용해기호적기법과수치적기법으로처리하는방법,scikit-learn을이용한머신러닝을설명하고있다.각모듈설명은사용법에만그치지않고모듈의종속성및구현철학도자세히설명하고있다.행렬및희소행렬,벡터,상미분과편미분,적분,인수분해,시계열,선형대수,통계모델링,머신러닝,신호처리등과같은이공계의대표적인문제해결에있어Python을어떻게활용할수있는지예제를통해상세히설명해준다.이책에서제공하는풍부한예제를따라하다보면Python을통한과학적연산을효과적으로익히게될것이다.