Download - Doing math with python.ch03
![Page 2: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/2.jpg)
파이썬으로 풀어보는 수학
상세설명https://github.com/DevStarSJ/Study/blob/master/Blog/Python/DoingMathWithPython/DoingMathWithPython.Ch03.ipynb
• 원서명 : Doing Math with Python: Use Programming to Explore Algebra, Statistics, Calculus, and More! (ISBN 9781593276409)
• 지은이 : 아미트 사하 (Amit Saha)• 원서 및 관련자료 : https://www.nostarch.com/doingmathwithpython• 번역서 : http://www.acornpub.co.kr/book/doing-math-with-python
![Page 3: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/3.jpg)
3
1. 평균 (mean) 숫자 집합을 요약하는 가장 일반적이고 집합적인 방법
모든 숫자들의 합을 그 개수로 나눔
![Page 4: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/4.jpg)
4
2. 중위수 (median) 숫자 집합에서 중간에 있는 값
짝수 개 일 경우 가운데 두 값의 평균값
![Page 5: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/5.jpg)
5
3. 최빈수 (mode) 가장 자주 발생한 수
Counter 클래스를 이용하면 쉽게 가능
.most_common( 개수 ) 를 가장 빈도가 높은 요소 추출 가능
![Page 6: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/6.jpg)
6
4. 빈도 테이블 생성 전체 숫자에 대한 빈도를 출력 빈도가 아닌 항목순으로 출력
![Page 7: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/7.jpg)
7
5. 산포정도 측정 5.1 범위 (range), 최소 (min), 최대 (max) 구하기
값들의 최소값과 최대값 간의 거리가 얼마나 되는지 측정
![Page 8: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/8.jpg)
8
5. 산포정도 측정 5.2 분산 (variance) 과 표준편차 (standard deviation)
• 분산 : 평균값 주변에 모여있는지 흩어져 있는지 정도를 알려주는 수치
• 표준편차 : 분산의 제곱근값
![Page 9: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/9.jpg)
9
5. 산포정도 측정 5.2 분산 (variance) 과 표준편차 (standard deviation)
• 값이 0 에 가까워질수록 평균에 모여있다는 뜻이고 ,• 값이 커질수록 평균에서 멀게 분산되어 있는 값이 많다는 뜻
![Page 10: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/10.jpg)
10
6. 두 데이터 집합 간 상관관계 계산• 피어슨 상관계수 : 두 숫자 집합 간 관계의 특성과 강도를 측정
• -1 에서 1 사이의 값을 가지며 , 0 이면 관계가 없음 , 1 로 가까울수록 양의 관계 , -1 에 가까울수록 음의 관계
• 값이 커질수록 평균에서 멀게 분산되어 있는 값이 많다는 뜻
![Page 11: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/11.jpg)
11
6. 두 데이터 집합 간 상관관계 계산
![Page 12: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/12.jpg)
12
6. 두 데이터 집합 간 상관관계 계산
![Page 13: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/13.jpg)
13
7. 데이터 간의 상관관계 여부 확인• 2 개의 데이터가 관계가 있는지 없는지 여부를 확인하려면
산점도를 그려보면 편함
• 고등학교 성적 등급과 대학입학 성적 사이의 관계여부 확인
![Page 14: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/14.jpg)
14
7. 데이터 간의 상관관계 여부 확인• 수학성적만을 대입입학성적과 비교
![Page 15: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/15.jpg)
15
8. 산점도의 중요성• 프란시스 안스콤 (Francis Anscombe) 가 작성한 Graphs in Statistical Analysis
![Page 16: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/16.jpg)
16
8. 산점도의 중요성• 평균 , 표준편차 , X-Y 상관관계
통계 데이터가 모두 동일함
![Page 17: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/17.jpg)
17
8. 산점도의 중요성• 산점도
산점도로 보면 모두 다른 데이터라는 것을 확인 가능함
![Page 18: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/18.jpg)
18
9. 파일에서 데이터 읽기 9.1 텍스트 파일읽기
• ch03.mydata.txt
![Page 19: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/19.jpg)
19
9. 파일에서 데이터 읽기 9.2 csv ( 콤마구분값 ) 파일에서 읽기
• ch03.data.csv
![Page 20: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/20.jpg)
프로그래밍 연습문제필자가 풀이한 답은 다음 Link 를 참고하세요 .https://github.com/DevStarSJ/Study/blob/master/Blog/Python/DoingMathWithPython/DoingMathWithPython.Ch03.ipynb저자의 정답은 다음 Link 에 있습니다 .https://www.nostarch.com/doingmathwithpython
![Page 21: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/21.jpg)
21
1. csv 데이터로 테스트다른 csv 파일을 가지고 통계데이터 및 그래프를 출력하세요 .( https://www.quandl.com/data/WORLDBANK/USA_SP_POP_TOTL의 경우 )
![Page 22: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/22.jpg)
22
2. 퍼센트 위치 계산 백분위수 : 설정된 백분율 위치에 해당하는 값 (ex. 95 분위수 : 집합내 해당 수보다 낮은 수가 95%
있는 수 ) csv 파일을 읽어서 입력된 백분위에 해당하는 숫자를 표시하는 프로그램을 작성하세요 . 파일 위치https://
github.com/DevStarSJ/Study/blob/master/Blog/Python/DoingMathWithPython/files/ch03.math.score.csv
![Page 23: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/23.jpg)
23
3. 그룹화한 빈도 테이블 생성 주어진 데이터에 대해서 n 개의 그룹으로 나누어서 해당 그룹에 몇 개에 데이터가
있는지를 보여주는 빈도 테이블을 생성하세요 . 예를 들어 아래 데이터를 4 개의 그룹으로 나눌 경우
![Page 24: Doing math with python.ch03](https://reader036.vdocuments.site/reader036/viewer/2022062503/587ac34f1a28abc0478b74c1/html5/thumbnails/24.jpg)
Thanks