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