코딩 뇌를 깨우는 파이썬

문제 해결 능력을 키우는 컴퓨팅 사고부터 알고리즘, 데이터 분석, 머신러닝까지
$39.69
SKU
9791169211376
+ Wish
[Free shipping over $100]

Standard Shipping estimated by Mon 06/3 - Fri 06/7 (주문일로부 10-14 영업일)

Express Shipping estimated by Wed 05/29 - Fri 05/31 (주문일로부 7-9 영업일)

* 안내되는 배송 완료 예상일은 유통사/배송사의 상황에 따라 예고 없이 변동될 수 있습니다.
Publication Date 2023/08/30
Pages/Weight/Size 183*235*35mm
ISBN 9791169211376
Categories IT 모바일 > 프로그래밍 언어
Description
잠자는 코딩 뇌를 깨워라
파이썬 기초부터 머신러닝까지 한 권에!


프로그래밍 경험이나 지식이 없는 분들을 위해 파이썬과 다양한 라이브러리(넘파이, 맷플롯립, 판다스, 사이킷런 등)를 사용한 문제 해결 비법을 소개합니다. 이 책을 통해 일상에서 마주하는 다양한 문제를 프로그래밍으로 해결하는 기술을 배워보세요. 데이터 모델링과 해석 같은 데이터 과학의 핵심을 배우고, 간단한 머신러닝 기법도 만나봅니다.

이 책은 MIT 강의를 기반으로 만들어진 컴퓨터 과학 입문서로 프로그래밍을 전혀 모르는 초보자도 부담 없이 펼쳐볼 수 있습니다. 컴퓨팅 사고와 간단한 알고리즘처럼 프로그래밍 입문에 꼭 필요한 주제로 잠들어 있던 코딩 뇌를 깨우세요. 각 장에 마련된 뇌풀기 문제를 통해 데이터 시각화나 시뮬레이션, 데이터 계산 기법, 머신러닝 같은 실용적인 주제를 살펴보며 프로그래밍 능력을 키워봅시다.
Contents
1부 프로그래밍 시작하기

1장 시작하기

2장 파이썬 소개
_2.1 파이썬과 파이썬 IDE 설치하기
_2.2 파이썬의 기본 요소
__2.2.1 객체, 표현, 수치 타입
__2.2.2 변수와 할당
_2.3 분기 프로그램
_2.4 문자열과 입력
__2.4.1 입력
__2.4.2 문자 인코딩에 관한 여담
_2.5 while 루프
_2.6 for 루프와 range
_2.7 스타일의 중요성

3장 간단한 수치 프로그램
_3.1 완전 열거
_3.2 근사 해법과 이분 검색
_3.3 부동소수점 사용에 대하여
_3.4 뉴턴-랍슨 방법

2부 효율적으로 프로그래밍하기

4장 함수, 유효범위, 추상화
_4.1 함수와 유효범위
__4.1.1 함수 정의
__4.1.2 키워드 인수와 기본값
__4.1.3 가변 길이 인수
__4.1.4 유효범위
_4.2 사양
_4.3 함수를 사용해 코드를 모듈화하기
_4.4 객체로서의 함수
_4.5 메서드

5장 구조적인 타입과 가변성
_5.1 튜플
__5.1.1 복수 할당
_5.2 range와 iterator 타입
_5.3 리스트와 가변성
__5.3.1 복제
__5.3.2 리스트 내포
_5.4 리스트의 고차 연산
_5.5 문자열, 튜플, 레인지, 리스트
_5.6 집합
_5.7 딕셔너리
_5.8 딕셔너리 내포

6장 재귀와 전역 변수
_6.1 피보나치수열
_6.2 팰린드롬
_6.3 전역 변수

3부 탄탄한 프로그램 만들기

7장 모듈과 파일
_7.1 모듈
_7.2 사전에 정의된 패키지 사용하기
_7.3 파일

8장 테스트와 디버깅
_8.1 테스트
__8.1.1 블랙박스 테스트
__8.1.2 글라스박스 테스트
__8.1.3 테스트 수행하기
_8.2 디버깅
__8.2.1 디버깅 배우기
__8.2.2 실험 설계하기
__8.2.3 어려운 상황에 직면했을 때
__8.2.4 버그를 찾았을 때

9장 예외와 assert
_9.1 예외 처리하기
_9.2 제어 흐름 메커니즘으로 예외 사용하기
_9.3 assert

10장 클래스와 객체 지향 프로그래밍
_10.1 추상 데이터 타입과 클래스
__10.1.1 매직 메서드와 해싱 가능 타입
__10.1.2 추상 데이터 타입을 사용해 프로그램 설계하기
__10.1.3 학생 관리를 위한 클래스
_10.2 상속
__10.2.1 다단계 상속
__10.2.2 대체 원칙
_10.3 캡슐화와 정보 은닉
__10.3.1 제너레이터
_10.4 고급 예제

4부 프로그래밍으로 문제 풀기

11장 알고리즘 복잡도의 간략한 소개
_11.1 계산 복잡도에 관한 고찰
_11.2 점근 표기법
_11.3 중요한 몇 가지 복잡도 종류
__11.3.1 상수 복잡도
__11.3.2 로그 복잡도
__11.3.3 선형 복잡도
__11.3.4 로그 선형 복잡도
__11.3.5 다항 복잡도
__11.3.6 지수 복잡도
__11.3.7 복잡도 비교

12장 몇 가지 간단한 알고리즘과 데이터 구조
_12.1 검색 알고리즘
__12.1.1 선형 검색과 간접 참조로 원소에 접근하기
__12.1.2 이진 검색과 가정 활용
_12.2 정렬 알고리즘
__12.2.1 합병 정렬
__12.2.2 파이썬의 정렬 기능
_12.3 해시 테이블

13장 그래프 출력과 클래스
_13.1 맷플롯립으로 그래프 그리기
_13.2 모기지 그래프 그리기
_13.3 전염병을 위한 인터랙티브 그래프

5부 프로그래밍으로 현실 세계 이해하기

14장 배낭 문제와 그래프 최적화 문제
_14.1 배낭 문제
__14.1.1 탐욕 알고리즘
__14.1.2 0/1 배낭 문제의 최적 솔루션
_14.2 그래프 최적화 문제
__14.2.1 고전적인 그래프 문제
__14.2.2 최단 경로: 깊이 우선 탐색과 너비 우선 탐색

15장 동적 계획법
_15.1 피보나치수열 다시 살펴보기
_15.2 동적 계획법과 0/1 배낭 문제
_15.3 동적 계획법과 분할 정복

16장 랜덤 워크와 데이터 시각화
_16.1 랜덤 워크
_16.2 술에 취한 농부의 산책
_16.3 편향된 랜덤 워크
_16.4 위험한 들판

6부 데이터 이해하기

17장 확률적 프로그램, 확률 그리고 분포
_17.1 확률적 프로그램
_17.2 간단한 확률 계산하기
_17.3 추론 통계
_17.4 분포
__17.4.1 확률 분포
__17.4.2 정규 분포
__17.4.3 연속 균등 분포와 이산 균등 분포
__17.4.4 이항 분포와 다항 분포
__17.4.5 지수 분포와 기하 분포
__17.4.6 벤포드 분포
_17.5 해싱과 충돌
_17.6 잘하는 팀이 얼마나 자주 이기나요?

18장 몬테카를로 시뮬레이션
_18.1 파스칼의 문제
_18.2 크랩스 게임
_18.3 테이블 룩업을 사용해 성능 높이기
_18.4 π 찾기
_18.5 시뮬레이션 모델에 관한 맺음말

19장 샘플링과 신뢰도
_19.1 보스턴 마라톤 데이터 샘플링
_19.2 중심 극한 정리
_19.3 평균의 표준 오차

20장 실험 데이터 이해하기
_20.1 스프링 운동
__20.1.1 선형 회귀를 사용해 최적의 직선 찾기
_20.2 발사체 운동
__20.2.1 결정 계수
__20.2.2 계산 모델 사용하기
_20.3 지수적으로 분포된 데이터 다루기
_20.4 이론이 없을 때

21장 무작위 시험과 가설 검정
_21.1 유의성 검증하기
_21.2 P 값을 주의하세요
_21.3 단측 1표본 검정
_21.4 유의한가요? 유의하지 않은가요?
_21.5 표본 크기는?
_21.6 다중 가설
_21.7 조건부 확률과 베이즈 통계
__21.7.1 조건부 확률
__21.7.2 베이즈 정리

22장 거짓말, 새빨간 거짓말 그리고 통계학
_22.1 가비지 인 가비지 아웃(GIGO)
_22.2 테스트의 불완전성
_22.3 오해하기 쉬운 그래프
_22.4 Cum Hoc Ergo Propter Hoc
_22.5 전체를 알려주지 않는 통계 측정
_22.6 샘플링 편향
_22.7 맥락의 중요성
_22.8 사과와 오렌지 비교하기
_22.9 체리 피킹
_22.10 주의해야 할 외삽
_22.11 텍사스 명사수의 오류
_22.12 혼동하기 쉬운 백분율
_22.13 회귀 오류
_22.14 통계적으로 유의한 차이가 실제로 유의하지 않을 수 있음
_22.15 주의 사항

7부 머신러닝

23장 판다스로 데이터 탐험하기
_23.1 데이터프레임과 CSV 파일
_23.2 시리즈와 데이터프레임 만들기
_23.3 열과 행 선택하기
__23.3.1 loc와 iloc를 사용해 선택하기
__23.3.2 그룹 선택하기
__23.3.3 내용으로 선택하기
_23.4 데이터프레임 조작하기
_23.5 확장 예제
__23.5.1 온도 데이터
__23.5.2 화석 연료 소비량

24장 머신러닝 간략히 살펴보기
_24.1 특성 벡터
_24.2 거리 지표

25장 군집
_25.1 Cluster 클래스
_25.2 k 평균 군집
_25.3 가상의 예제
_25.4 실전 예제

26장 분류
_26.1 분류기 평가하기
_26.2 마라톤 선수의 성별 예측하기
_26.3 K 최근접 이웃
_26.4 회귀 기반 분류기
_26.5 타이타닉 생존자 예측하기
_26.6 마무리
Author
존 V. 구태그,박해선
MIT 전기공학 및 컴퓨터과학부(EECS)에서 듀갈드 C. 잭슨 교수로 재직하고 있으며 ACM의 펠로이자 미국 예술 과학 아카데미의 회원입니다. 1999년부터 2004년까지 전기공학 및 컴퓨터과학부에서 학부장을 맡았으며, 현재는 MIT의 컴퓨터과학 및 인공지능 연구소(CSAIL)에서 의료 문제에 적용할 수 있는 고급 머신러닝 및 컴퓨터 비전 기술 연구를 이끌고 있습니다. 또한, 환자 치료 관리에 사용하는 인공지능 플랫폼을 개발하는 헬스앳스케일 테크놀로지스Health[at]Scale Technologies를 설립해 CTO로 재직하고 있습니다. MIT에서 2006년부터 직접 문제를 구성하고 데이터에서 유용한 정보를 찾아내는 데 필요한 계산적 사고를 익히는 수업을 개설했으며, 해당 강의는 온라인으로도 공개되어 2백만 명 이상의 학생이 수강했습니다.
MIT 전기공학 및 컴퓨터과학부(EECS)에서 듀갈드 C. 잭슨 교수로 재직하고 있으며 ACM의 펠로이자 미국 예술 과학 아카데미의 회원입니다. 1999년부터 2004년까지 전기공학 및 컴퓨터과학부에서 학부장을 맡았으며, 현재는 MIT의 컴퓨터과학 및 인공지능 연구소(CSAIL)에서 의료 문제에 적용할 수 있는 고급 머신러닝 및 컴퓨터 비전 기술 연구를 이끌고 있습니다. 또한, 환자 치료 관리에 사용하는 인공지능 플랫폼을 개발하는 헬스앳스케일 테크놀로지스Health[at]Scale Technologies를 설립해 CTO로 재직하고 있습니다. MIT에서 2006년부터 직접 문제를 구성하고 데이터에서 유용한 정보를 찾아내는 데 필요한 계산적 사고를 익히는 수업을 개설했으며, 해당 강의는 온라인으로도 공개되어 2백만 명 이상의 학생이 수강했습니다.