본문 바로가기

통계학

(4)
[통계학|scipy] 정규분포 모집단의 표본분산의 분포는 정말 카이제곱분포를 따를까 카이제곱 분포(χ2 분포)는 정규분포를 따르는 모집단에서 k개의 샘플을 뽑았을 때의 샘플의 분산의 분포가 된다고 한다. 이게 정말 그런가 궁금해서, python scipy.stats 을 이용해서 실험을 해 보았다. (첫 문장에서 분산의 분포라고 했지만, 사실 제곱합의 분포다. 평균이 0인 확률변수의 분산은 결국 제곱합/k 일 뿐이니까 이렇게 퉁치자.) import numpy as np import pandas as pd import scipy as sc import scipy.stats import seaborn as sns import matplotlib.pyplot as plt dist = scipy.stats.norm() def plot_chisq(df, ax): x = np.linspace(0, ..
[통계학|Scipy] scipy 로 정규분포 그래프 + 구간확률 구하기. 문제 : 모평균이 50.2이고 모분산이 48인 어떤 모집단으로부터 크기가 100인 표본이 임의추출되었다고 할 때 표본평균이 47에서 51 사이에 있을 확률을 구해보자. scipy.stats 에 보면, norm 이라는 클래스가 있다. 정규분포를 다룰 수 있는 클래스를 만들어준다. 정규분포는 평균과 표준편차 두 수치로 결정된다. norm 클래스 생성자 인자도 이 두개. 문제에서 표분평균의 표본분산은 모분사/표본크기 이고, 중심극한정리에 따라 정규분포를 따른다. N(x, m=502, sig^2=48/100) 을 구하면 된다. 구간의 확률은 norm 클래스의 cdf 함수의 차로 구할 수 있다. import numpy as np import matplotlib.pyplot as plt import scipy as..
[Python] 이항분포 그래프 그리기 import sys from functools import lru_cache import math import numpy as np import matplotlib.pyplot as plt @lru_cache(None) def ncr(n, r): """조합. 재귀식을 이용함. n이 커지면 스택오버플로우 발생. """ if r in (0, n): return 1 return ncr(n - 1, r) + ncr(n - 1, r - 1) def bidist(n, p): """이항분포""" q = 1 - p dist = np.array([ncr(n, k) * (p ** k) * (q ** (n - k)) for k in range(n + 1)]) return dist def bicoeff(n): """이항계수...
[번역] 이동 중앙값 분해를 통한 비정상 탐지 Dectect Anomaly with Moving Median Decomposition 이동 중앙값 분해를 통한 비정상 탐지https://anomaly.io/anomaly-detection-moving-median-decomposition/ 2016 년 1 월 12 일 시계열 분해는 시계열을 계절적(seasonal) 시계열, 트랜드 시계열, 랜덤 잔여 시계열로 나눕니다. 트렌드와 랜덤 시계열은 둘 다 비정상을 감지하는 데 사용될 수 있습니다. 그러나 이미 비정상적인 시계열에서 비정상(anomaly)을 탐지하는 것은 쉽지 않습니다. 우선 결론 비정상적인 시계열로 작업하기 : 이동 평균 분해를 통한 이상 탐지는 작동하지 않음이동 중앙값 분해를 통한 이상 탐지는 동작함. 이동 평균의 문제 R의 시계열 분해 포스팅에서 우리는 알고리즘이 이동평균을 이용하여 시계열의 추세를 추출하고 있음을 배웠습니다..