기본 콘텐츠로 건너뛰기

통계관련 함수와 메서드 사전

A B C d E F G H I K L M N O P Q R S T U V W Z A statsmodels.ap.stats.anova_lm(x) statsmodels.formula.api.ols 에 의해 생성되는 모형 즉, 클래스 인스턴스(x)를 인수로 받아 anova를 실행합니다. np.argsort(x, axis=-1, kind=None) 객체 x를 정렬할 경우 각 값에 대응하는 인덱스를 반환합니다. Axis는 기준 축을 지정하기 위한 매개변수로서 정렬의 방향을 조정할 수 있음(-1은 기본값으로 마지막 축) pandas.Series.autocorr(lag=1) lag에 전달한 지연수에 따른 값들 사이의 자기상관을 계산 B scipy.stats.bernoulli(x, p) 베르누이분포에 관련된 통계량을 계산하기 위한 클래스를 생성합니다. x: 랜덤변수 p: 단일 시행에서의 확률 scipy.stats.binom(x, n, p) 이항분포에 관련된 통계량을 계산하기 위한 클래스를 생성합니다. x: 랜덤변수 n: 총 시행횟수 p: 단일 시행에서의 확률 C scipy.stats.chi2.pdf(x, df, loc=0, scale=1) 카이제곱분포의 확률밀도함수를 계산 $$f(x, k) =\frac{1}{2^{\frac{k}{2}−1}Γ(\frac{k}{2})}x^{k−1}\exp\left(−\frac{x^2}{2}\right)$$ x: 확률변수 df: 자유도 pd.concat(objs, axis=0, join=’outer’, …) 두 개이상의 객체를 결합한 새로운 객체를 반환. objs: Series, DataFrame 객체. Axis=0은 행단위 즉, 열 방향으로 결합, Axis=1은 열단위 즉, 행 방향으

정적분(Definite Integral)

내용 정적분으로 면적 계산 극좌표에서의 면적 적분에 의한 부피 계산 정적분(Definite Integral) 정적분으로 면적 계산 곡선에 대한 적분 계산으로 면적을 계산할 수 있습니다. 그림 1은 식이 알려진 곡선으로 그 곡선 AB하의 PQNM의 면적을 계산해 봅니다. 그림 1. 곡선의 면적. 그림 1의 지정된 영역 PQNM의 면적은 그 구간 내에 포함된 매우 작은 부분들의 면적을 계산하여 모두 합하는 방식으로 계산될 수 있습니다. 그림 2는 밑면 dx, 높이 dy로서 영역 PQNM 내에 포함된 작은 부분을 나타낸 것으로 각 면적의 합이 지정된 영역의 총 면적이 됩니다. 그림 2. 영역의 부분에 대한 단면적. 위 그림의 면적을 평균 높이 y, 밑면의 길이 dx로 하는 사각형으로 계산할 수 있을까요? 평균 높이를 사용하므로 그림의 윗부분에서 존재하는 부분과 존재하지 않는 부분을 대칭 관계로 고려하면 그 면적을 dx·y로 간주할 수 있습니다. 더구나 dx를 매우 작게 감소시킨다면 대칭 관계로 가정한 부분에서 발생하는 오차가 매우 작아지기 때문에 실제 면적에 더욱 근접할 것입니다. 이 작은 부분의 1개의 면적을 dS로 한다면 다음과 같이 나타낼 수 있습니다. dS = y·dx 주어진 영역의 총면적은 식 1과 같이 부분 면적의 합으로 표현할 수 있습니다. $$\begin{equation}\tag{1} \text{총면적}\; S = \int dS = \int y\,dx \end{equation}$$ 그러므로 x로 구성된 y의 함수를 안다면 적분에 의해 위 계산을 실행할 수 있습니다. 예를 들어 지정된 영역의 곡선의 함수가 y = b + ax 2 라면 이 함수의 적분으로 총 면적을 계산할 수 있습니다. from sympy import * a, b, x=symbols("a, b, x") y=b+a*x**2 inty=integrate(y, x) inty $\quad \color{navy}{\frac{a x

두 독립집단의 비교

내용 두 표본의 비교 소규모 표본에서 등분산 소규모표본에서 이분산 대규모 표본 두 독립집단의 비교 두 표본의 비교 다음과 같이 각각 정규분포를 따르는 두 개의 독립 확률변수 X, Y의 평균을 비교하기 하기 위해 가설검정을 적용합니다. $$\begin{align}\bar{X}&=\frac{\sum^n_{i=1} X_i}{n_X} \sim N\left(\mu_X, \frac{\text{s}_X}{n_X}\right)\\ \bar{Y}&=\frac{\sum^n_{i=1} Y_i}{n_Y} \sim N\left(\mu_Y, \frac{\text{s}_Y}{n_Y}\right)\end{align}$$ 각 표본집단이 정규분포를 가정하지 않더라도 중심극한정리에 따라 근사적으로 정규분포를 만족하게 됩니다. 두 집단을 비교하기 위해 각 평균의 차이에 대한 다음의 귀무가설을 설정합니다. H0 : μ X - μ Y = 0 귀무가설의 검정통계량은 두 집단이 결합한 분포로부터 계산됩니다. 즉, X, Y의 결합확률분포의 평균과 표준편차는 식 1과 같이 계산됩니다. $$\begin{align}\tag{1} &\begin{aligned} E(X-Y)&=E(X)-E(Y)\\ &=\mu_X -\mu_Y\end{aligned}\\ &\begin{aligned}\text{Var}(X-Y) &=\text{Var}(X)+\text{Var}(Y)-\text{Cov}(X,Y)\\ &=\frac{\sigma^2_X}{n_X}+\frac{\sigma^2_Y}{n_Y}\end{aligned}\\ &\text{Cov}(X,Y)=0\quad \because \; X, Y: \text{독립}\\\end{align}$$ 식 1에서 Cov는 공분산 을 의미합니다. 즉, X, Y 두 집단 사이에 교호작용의 효과를 고려하는 것으로 두 집단이 독립이라는 가정에 의해 0이 됩니다

가설 검정

가설검정이란? 검정력(Power)과 표본수(Sample size) 귀무가설과 대립가설 단측검정과 양측검정 가설검정(Hypothesis test) 가설검정 통계적 추론은 표본에서 계산된 통계량을 기반으로 모집단의 모수에 대한 잠정적인 가설을 설정하는 단계와 그 가설을 채택 또는 기각하기 위한 검정 단계로 구성됩니다. 검정 단계에서 판단의 기준이 되는 표본의 통계량을 검정통계량 이라고 합니다. 그 검정 통계량을 기준으로 더 극단적인 통계량이 나타날 확률을 p-value 이라 합니다. 그 p-value와 유의수준을 비교하여 그 통계량의 채택 또는 기각이 결정됩니다. p-value < 유의수준 : 참(true)으로 가정하는 가설을 기각 p-value > 유의수준 : 참(true)으로 가정하는 가설을 기각하지 못함 검정력(Power)과 표본수(Sample size) 검정력은 잘못된 가설을 기각할 수 있는 확률을 의미합니다. 예를 들어 검정력이 90%일 경우 잘못된 가설(대립가설)을 채택할 확률이 10%가 존재함을 나타냅니다. 이것은 표 1에서 나타낸 제2종 오류입니다. 이러한 검정력은 표본수가 커지면 증가합니다. 그러므로 원하는 검정력을 얻기 위해서 적정한 표본수를 가져야 합니다. 귀무가설과 대립가설 분석자는 표본평균들의 평균을 모평균의 추정치로 사용한다는 가설을 세우고 이 가설에 대한 통계적 타당성을 검정할 수 있습니다. 분석자는 이 가설이 통계적으로 유의한 차이를 보이지 않기 때문에 기각되지 않을 것으로 예상합니다. 이러한 가설을 귀무가설 (null hypothesis, H0) 이라합니다. 이 귀무가설에 대응되는 기각 될 것으로 예상되는 가설을 대립가설 (alternative hypothesis, Ha) 이라 합니다. 귀무가설의 검정은 표본의 정보 즉, 검정통계량을 기반합니다. 그러므로 다음과 같은 오류의 가능성을 포함합니다. 표 1. 오류의 종류 H0 진실 Ha 진실 H0 채택 옳은

sympy 식과 연산

내용 symbols 등호 기호 ^, &, 그리고 / 기본 연산 대체(substitution) 문자열을 sympy 식으로 전환 evalf, N lambdify sympy operation symbols sympy에서 문자를 심벌로 사용하기 위해서는 사용전에 반드시 정의되어야 합니다. 심벌을 정의하기 위해 symbols() 를 사용하는데 여러개의 심벌들을 동시에 정의할 수 있습니다. from sympy import * x=symbols('x') x+1 x + 1 y, z=symbols('y z') type(y) sympy.core.symbol.Symbol 심벌은 문자열로 지정이 가능합니다. crazy =symbols('unrelated') crazy+1 unrelated + 1 symbols() 함수에 의해 정의한 일반 객체의 이름으로 사용된 문자와는 구분됩니다. 다음 코드에서 symbol로 정의된 x 즉, sympy 식에 사용된 심벌 x와 2가 할당된 객체 이름의 x와는 구분됨을 나타내고 있습니다. x= symbols('x') #심벌로 x expr=x+1 expr x + 1 x=2 #객체이름으로 x x + 3 5 sympy에서 생성한 식의 심벌에 특정한 수를 대입하기 위해서는 .subs() 메소드를 적용합니다. x=symbols('x') expr=x+1 expr x + 1 expr.subs(x, 4) 5 등호 기호 python에서 ' = '는 이 기호를 기준으로 오른쪽의 값을 왼쪽으로 할당함을 의미합니다. sympy 역시 동일한 의미로 작동됩니다. ' 같다 '의 의미로는 ‘ == ’를 사용하고 bool형 즉, True, False의 결과를 반환합니다. x=symbols('x') expr = x+1 expr==3 False expr1=expr.sub

적분의 일반 규칙과 부정적분(Indefinite Integral)

내용 적분의 일반 규칙 함수들의 합에 대한 적분 함수의 상수항 특별한 함수의 적분 특별한 함수의 적분공식 삼각함수의 적분 편적분 적분 규칙 적분의 일반 규칙 함수 y에 대한 미분은 $\displaystyle \frac{dy}{dx}$를 계산하는 것입니다. 많은 수학적 계산과 같이 미분 과정 역시 역산될 수 있습니다. 예를 들어 $\displaystyle y = x^4$의 미분은 $\displaystyle \frac{dy}{dx} = 4x^3$이 되며 그 과정을 반대로 실행하면 원 함수인 $\displaystyle y = x^4$이 되어야 합니다. 그러나 미분계수가 $\displaystyle 4x^3$이 되는 함수는 위에서 언급한 함수 외에 $\displaystyle x^4 + C$와 같이 상수를 첨가된 다양한 함수의 미분 결과일 수 있습니다. 상수는 미분의 결과에 영향을 주지 않기 때문입니다. 이러한 점을 적분에 고려하여 미분의 역과정인 적분 결과에 상수 C를 더해 줍니다. $$\begin{align} \frac{dy}{dx}&=x^{n-1}\\ \int nx^{n-1}\; dx&= x^n+C\\ & C: 상수 \end{align}$$ 식 1과 같이 위의 관계에서 독립변수 x의 거듭제곱에 대한 미분과 적분의 일정한 관계가 성립됩니다. 적분일반규칙 $$\begin{align}\tag{1} \frac{dy}{dx}&=x^{n}\\ \int nx^{n}\; dx&= \frac{1}{n+1}x^{n+1}+C\\ & C: 상수,\; n \neq -1 \end{align}$$ 적분 계산은 sympy의 integrate() 함수를 적용합니다. 이 함수의 결과에는 상수가 고려되지 않습니다. 그러나 적분 결과로 대상인 함수에서의 상수의 존재 여부를 결정할 수 없기 때문에 상수가 존재한다고 간주해야 합니다. 그러므로 intergrate()함수에 의한 계

추정(Estimation)

내용 모수에 대한 점추정 모수에 대한 구간추정 신뢰구간(Confidence Interval) 추정(Estimation) 추정에서는 모수의 특정값을 추정하는 점추정(point estimation) 과 모수가 포함될 일정한 구간을 추정하는 구간추정(interval estimation) 으로 구분됩니다. 모수에 대한 점추정 표본으로부터 모집단의 모수들을 추정하기 위해 사용하는 통계량을 추정량(estimator) 라고하며 가정에 부합하며 어떠한 편의(bias)를 가지지 않는 추정치를 불편추정치(unbiased estimator) 로 사용합니다. 예를 들어 모평균을 추정하기 위해 표본평균을 불편추정치로 사용합니다. n개의 표본 X 1 , X 2 , …, X n 들의 표본평균은 식 1과 같이 계산되며 모평균의 추정량이됩니다. $$\begin{align}\tag{1} \hat{\mu}&=\bar{X}\\ &=\frac{1}{n}(\bar{X_1}+\bar{X_2}+\cdots+\bar{X_n})\\ &=\frac{1}{n}\sum^n_{i=1}\bar{X_i } \end{align}$$ 또한 일반적으로 모분산 σ 2 는 미지의 값이므로 표본분포의 표준편차 s를 추정량으로 사용하여 식 2와 같이 계산됩니다. $$\begin{align}\tag{2}&\begin{aligned}\hat{\sigma}&=s\\ &=\sqrt{\frac{1}{n-1}\sum^n_{i=1}(\bar{X_i}-\bar{X})} \end{aligned}\\ & n :\text{샘플 수} \end{align}$$ 모수에 대한 구간추정 표본의 통계량에 의해 추정된 모수는 모집단에서 표집되는 표본에 따라 다양해 지므로 불확실성을 가집니다. 그러므로 점 추정치와 같이 하나의 값으로 모수를 나타내는 것보다 확률적으로 신뢰할 수 있는 수준에서 모수가 포함되는 구간을 설정하여 나타내는 것이 보다 합리적일 것입니다. 이러한

표준편차와 표준오차

내용 자유도 표준편차와 표준오차 자료의 특성을 나타내는 기본적인 통계량은 평균과 분산이 있습니다. 평균은 자료의 중심을 나타내고 퍼짐 정도는 분산으로 표시합니다. 분산의 제곱근이 표준편차이므로 이 통계량의 단위는 자료와 같기 때문에 분산보다는 표준편차를 더 유용하게 사용됩니다. 표준편차는 자료의 퍼짐성을 나타내는 자료로서 모집단의 표준편차(σ)를 알 수 없는 경우 식 1과 같이 계산된 표본표준편차(s)를 사용합니다. $$\begin{align}\tag{1}&\text{s}=\sqrt{\frac{\sum^n_{i=1}(x_i - \overline{x})^2}{n-1}}\\ &\text{s}: \text{표본표준편차}\\&n: \text{표본수}\end{align}$$ 식 1에서 분모는 자유도(degree of freedom, df) 입니다. 자유도 자유도는 자료의 값들이 확률 변수가 될 수 있는 정도를 의미합니다. 예를 들어 1, 2, 3의 값을 가진 표본의 경우 그 자료에 세 값이 나타날 확률은 동일하기 때문에 3 값 모두 확률변수가 되며 자유도는 3이 됩니다. 그러나 평균과 2개의 값을 안다면 나머지 값은 결정되므로 확률변수가 될 규모는 3개에서 2개로 감소됩니다. 이와 같이 자료의 통계량에 의해 자유도는 감소합니다. 그러므로 평균을 알려진 자료의 경우 자유도는 자료의 크기에서 1만큼 감소됩니다. 표준편차는 평균을 기준으로 각 자료의 퍼짐의 정도를 나타내는 것으로서 표본 수가 아니라 표본의 자유도를 고려해야 합니다. 이렇게 계산된 표준편차는 자료의 각 값과 평균과의 편차의 정도를 나타냅니다. 모평균을 모르는 경우 표본을 기준으로 통계적 분석이 이루어집니다. 그러나 표본평균은 모평균을 대신하는 과정에서 불확실성이 존재합니다. 그 불확실성은 표본들로부터 산출되는 통계량인 표본평균들과 모평균 사이의 오차로서 나타낼 수 있습니다. 그 통계량을 표준오차(standard error) 라고 합니다. 표 1