본문 바로가기

728x90
반응형
SMALL

코딩으로 익히는 Python/통계

(9)
[Python] 8. 이산확률분포 import scipy.stats as stats from scipy.special import comb,perm import numpy as np import matplotlib.pyplot as plt import matplotlib matplotlib.rcParams['font.family']='Malgun Gothic' matplotlib.rcParams['axes.unicode_minus'] = False 지난 시간 복습용 연습문제 1. 숫자 1부터 10까지 적혀있는 카드 10장이 있다. 이 중에서 하나의 카드를 뽑았을 때, 8이 적힌 카드가 나올 확률을 구하시오. 2. 주사위를 하나 던져 3이 나올 확률을 구하시오 3. 주사위를 2개 던져 눈금의 합이 6이 나올 확률을 구하시오 4. 1000 ..
[Python] 7. t검정,카이제곱 검정,F검정 import scipy.stats as stats import numpy as np import matplotlib.pyplot as plt import math import matplotlib matplotlib.rcParams['font.family']='Malgun Gothic' matplotlib.rcParams['axes.unicode_minus'] = False 지난 시간 복습용 연습문제 표본 : 20명의 벤처기업 경영자 혈압 평균 135, 표준편차 25 일반인의 혈압 평균 115인 경우 벤처기업 경영자의 혈압이 일반인보다 높은지 아닌지 검정하시오 (양측 검정) 95% Solution 표본 : 20명의 벤처기업 경영자 혈압 평균 135, 표준편차 25 일반인의 혈압 평균 115인 경우 벤처기업..
[Python] 6. 표준정규분포(z검정,t검정) import numpy as np import pandas as pd import matplotlib.pyplot as plt import math 정규분포 확률분포함수 pmf 확률질량함수(probability mass function) pdf 확률밀도함수(probability density function) cdf 누적분포함수(cumulative distribution function) ppf 누적분포함수의 역함수(inverse cumulative distribution function) sf 생존함수(survival function) = 1 - 누적분포함수 isf 생존함수의 역함수(inverse survival function) rvs 랜덤 표본 생성(random variable sampling) x..
[Python] 5. 모집단과 표본 : 모평균 추정, 중심극한정리 기술통계 분포를 표현하는 또다른 방법은 분포의 특징을 나타내는 여러가지 숫자를 계산하여 그 숫자로서 분포를 나타내는 것이다. 이러한 값들을 기술통계(descriptive statistics)라고 한다. 대표적인 기술통계는 다음과 같다. 표본평균, 표본중앙값, 표본최빈값 표본분산, 표본표준편차 표본왜도, 표본첨도 표본평균 표본평균(sample mean, sample average): 데이터 분포의 대략적인 위치를 나타낸다. 이 식에서 𝑁은 자료의 개수, 𝑖는 자료의 순서(index)를 뜻한다. 분산과 표준편차 데이터가 얼마나 변동(variation)하고 있는지를 알아야 한다. 이러한 정보를 알려주는 특징값이 표본분산(sample variance) 또는 표본표준편차(sample standard deviati..
[Python] 4. 회귀 : cost(mse) test, gradient, scipy.stats 예제 import numpy as np import pandas as pd import matplotlib.pyplot as plt import scipy.stats as st cost(MSE) test def cost(x,y,w): c=0 for i in np.arange(len(x)): hx = w*x[i] c = c+(hx-y[i])**2 return c/len(x) x_data = [1,2,3] y_data = [1,2,3] print(cost(x_data,y_data,-1)) print(cost(x_data,y_data,0)) print(cost(x_data,y_data,1)) print(cost(x_data,y_data,2)) print(cost(x_data,y_data,3)) [OUT] : 18...
[Python] 3. 공분산, 상관계수 import numpy as np import pandas as pd import matplotlib.pyplot as plt 데이터 불러오기 (pd.read_csv) python 파일 경로에 data3 폴더 만든 후 다음의 ch2_scores_em.csv파일 넣어놓기 df = pd.read_csv('data3/ch2_scores_em.csv', index_col='student number') df.head() # 이해를 위해 10개만 따로 발췌해서 보도록 하자 en_scores = np.array(df['english'])[:10] ma_scores = np.array(df['mathematics'])[:10] scores_df = pd.DataFrame({'english':en_scores, 'ma..
[Python] 2. 대표값, 산포도, 정규화, 도수 import numpy as np import pandas as pd import matplotlib.pyplot as plt from scipy.stats import mode 데이터 불러오기 (pd.read_csv) python 파일 경로에 data3 폴더 만든 후 다음의 ch2_scores_em.csv파일 넣어놓기 대표값 평균값 중앙값 최빈값 df = pd.read_csv('data3/ch2_scores_em.csv', index_col='student number') df.head() scores = df['english'].values scores [OUT] : array([42, 69, 56, 41, 57, 48, 65, 49, 65, 58, 70, 47, 51, 64, 62, 70, 71, ..
[Python] 1. 데이터 종류 : 이산 변수, 연속 변수 import pandas as pd 데이터 불러오기 (pd.read_csv) python 파일 경로에 data3 폴더 만든 후 다음의 ch1_sport_test.csv 파일 넣어놓기 데이터 종류 이산 변수(범주형 변수) : 주사위 눈, 연령, 결석 횟수, 학생수 (1점, 2점 이렇게 끊어지는 경우도 해당) 연속 변수 : 길이, 무게, 시간, 온도 (소수점까지 계속 연속인 경우) df = pd.read_csv( 'data3/ch1_sport_test.csv', index_col='학생번호') df 이산 변수 : 학생 번호, 학년, 윗몸일으키기, 점수, 순위 연속 변수 : 악력 review - 이산 변수와 연속 변수 차이 구분
[Python] 0. SciPy Library(사이파이 라이브러리) 구조 : 확률분포 클래스, 모수 지정, 확률분포 매서드 사이파이를 이용한 확률분포 사이파이(SciPy)는 수치해석기능을 제공하는 파이썬 패키지다. 여러 서브 패키지로 구성되어 있는데 그중 stats 서브 패키지는 확률 분포 분석을 위한 다양한 기능을 제공한다. 다음 코드로 임포트 한다. import scipy as sp import scipy.stats 확률분포 클래스 사이파이에서 확률분포 기능을 사용하려면 우선 해당 확률분포에 대한 확률분포 클래스 객체를 생성한 후에 이 객체의 메서드를 호출해야 한다. 확률분포 객체를 생성하는 명령에는 다음과 같은 것들이 있다. 이 명령들은 모두 stats 서브 패키지에 포함되어 있다. 예를 들어 정규분포 객체는 다음과 같이 생성한다. rv = sp.stats.norm() 모수 지정 확률분포 객체를 생성할 때는 분포의 형상..

728x90
반응형
LIST