[엑셀 데이터 분석] 이항분포(binomial distribution) BINOMDIST


어떤 실험의 결과가 (성공, 실패) 또는 (합격, 불합격)과 같이 두 가지 결과 중 하나로 나타나는 경우의 시행을 베르누이 시행(Bernoulli trial)이라고 하고 두 값 중 하나의 값을 취할 수 있는 확률 변수를 베르누이 확률변수라고 한다.


  • 베르누이 시행 :
  1. 각 시행의 결과는 성공(S) 또는 실패(F) 중의 하나로 나타난다.
  2. 매 시행에서의 성공확률을 p=P(S)로 나타낸다면 실패확률 q=1-p이다. 따라서 p+q=1이 된다.
  3. 각 시행은 독립이다.  즉, 한 시행에서의 성공 여부가 다음 시행의 성공확률에 영향을 미치지 않는다.

성공확률 p인 베르누이 시행에서 확률변수 X를 성공이면 1, 실패면 0으로 정의하면 확률변수 X의 평균과 분산은 다음과 같다.


동일한 성공확률 p를 가진 베르누이 시행을 독립적으로 n회 반복하여 시행할 때 성공의 횟수를 X라 하면 확률변수 X는 이항분포를 따르고 X~B(n, p)로 표현한다.

이항확률변수로 표현할 수 있는 예는 다음과 같다.

1) 앞면이 나타날 확률이 p인 동전을 n회 던졌을 때 나타나는 앞면의 횟수

2) 공정한 주사위를 n회 던졌을 때 1의 눈이 나타나는 횟수

3) 불량률 p인 제품 더미 중에서 n개를 추출하였을 때 그 중에 포함되는 불량품의 개수


위의 예시와 같다. 동일한 확률 p를 가정한다는 것을 확인해야 한다.

그리고 위의 내용은 고등학교 수학의 순열과 조합에 자주 나오는 단골 내용이다.

 

엑셀에서 이항분포의 확률계산은 BINOMDIST 함수를 이용한다.


  • BINOMDIST(number_s, trials, probability_s, cumulative) :

    - number_s : 성공 횟수

    - trials : 독립 시행횟수

    - probability_s : 각 시행에서 성공확률

    - cumulative : 함수형태를 결정하는 논리 값 1이면 누적확률질량함수 값을 계산하고, 0 이면 확률질량함수 값을 계산한다.


예제 1


4개의 동전을 던질 때 나타나는 앞면의 수를 확률변수 X라 하면 X~B(4, 0.5)가 되고 나타난 앞면의 수가 x일 때의 확률은 다음과 같다.

엑셀 수식은 "=BINOMDIST(x, 4, 0.5, 0)" 를 입력하면 된다.



예제 2


어느 생산 공정의 불량률이 5%일 때, 이 공정에서 임의로 10개를 추출하였을 때 이 중에서 불량품이 3개 이상 포함될 확률은?

전체 확률 1에서 불량품이 2개 이하일 확률을 빼면 된다. 2개 이하일 확률은 누적확률질량함수(논리 값 1)을 사용해서 구할 수 있다.

= 1 - BINOMDIST(2, 10, 0.5, 1)


참조: 엑셀데이터분석, 한국방송통신대학교 출판문화원, 조신섭 외 3명 공저

[엑셀 데이터 분석] 포아송분포 POISSON


포아송분포는 사무실에 한 시간 동안 전화가 걸려 오는 횟수, 고속도로 상에서 하루 동안 발생하는 교통사고의 수와 같이 특정한 사건이 일어날 확률이 아주 작은 경우에 사용하는 확률 모델이다. 단위 시간 당 희귀 현상의 평균 발생 횟수가 m일 때 어떤 특정한 단위 동안 발생한 현상의 수를 확률 변수 X로 정의한다. 그러면 확률변수 X는 0, 1, 2, ...의 값을 취하고, 모수가 m인 포아송분포(poisson distribution)을 따른다. 

모수가 m인 포아송분포의 확률질량함수는 다음과 같다.



모수 m을 갖는 포아송분포의 평균과 분산은 다음과 같다.



엑셀에서 포아송분포의 확률계산은 POISSON 함수를 이용하는데, 구체적인 사용법은 다음과 같다.


  • POISSON(x, mean, cumulative) :
- x : 단위 시간 동안의 발생 횟수
- mean : 단위 시간 동안의 평균 발생 횟수
- cumulative : 함수 형태를 결정하는 논리 값
  1 또는 TRUE이면 누적확률질량함수 값을 계산하고,
  0 또는 FALSE이면 확률질량함수 값을 계산한다.

만약에 사무실에 한 시간 동안 평균 10번의 전화가 걸려올 때, 12번 이상 걸려올 확률을 구하고 싶으면 11번 이하로 걸려올 확률 누적확률질량함수 값을 구해서 1에서 빼면 된다. 1 - POISSON(11, 10, 1) 

7번 걸려올 확률을 구하고 싶으면 POISSON(7, 10, 0)을 쓰면 된다.


 


참조: 엑셀데이터분석, 한국방송통신대학교 출판문화원, 조신섭 외 3명 공저

[확률분포] 확률변수, 확률질량함수, 확률밀도함수


확률변수는 크게 이산형 확률변수와 연속형 확률변수로 나눌 수 있다.

이산형은 책의 페이지당 오자의 수, 제품 한 상자에서 나온 불량품의 개수, 주사위를 5번 던질 때 짝수가 나오는 횟수 등과 같이 확률 변수가 취할 수 있는 값이 정수와 같이 유한하거나 셀 수 있는 값을 취하는 경우의 확률 변수이다.

연속형 확률변수는 사람의 키, 제품의 무게와 같이 정확한 값보다는 어떤 구간의 값을 취하는 형태에서 사용한다. 100명의 키를 조사해서 분포로 나타낼 때, 175.34는 몇 명 180.18은 몇 명 이렇게 나타내지 않고 170~175cm 몇 명(n/S)와 같이 구간으로 나타낸다. 여기서 표본 공간에서 조건을 만족하는 원소의 개수를 구하면 확률이다.


동전던지기를 4번 해서 뒷면이 나올 확률은 아래와 같다.

 x

 4

 P{X = x}

1/16 

4/16 

6/16 

4/16 

1/16 


위의 표에서 p(x) = P{X, x}는 확률변수 X가 취할 수 있는 값에 대해 확률을 대응시킨 관계를 나타내며 확률 분포 또는 분포함수라고 한다.

이산형 확률변수의 분포함수는 이산점의 확률을 나타내므로 도수 분포 그래프로 나타내진다. 그리고 분포함수 p(x)를 확률질량함수라고 부른다. 

연속형 확률변수의 확률분포는 확률변수 X가 어떤 구간에 속할 확률을 나타내므로 면적이 확률이 된다. 연속형 분포함수는 흔히 f(x)로 나타내고 확률밀도함수라고 부른다. 확률변수 X가 구간 (a, b)에 속할 확률 P(a< x <=b)는 곡선의 구간 (a, b) 면적이 된다. 

특정 조건을 만족하는 이벤트의 확률을 구할 때, 이산형 확률은 더하고, 연속형 확률은 적분한다. 



참조: 엑셀데이터분석, 한국방송통신대학교 출판문화원, 조신섭 외 3명 공저


[실험계획법] 분산 분석


변동을 정의하려면 어느 점으로부터의 산포인지 나타내는 자료의 중심과, 자각 자료가 중심으로부터 얼마나 떨어져 있는지를 나타내는 거리의 개념이 필요하다. 따라서 특성값 의 총평균 로부터의 거리인 총편차는 아래와 같이 분해할 수 있다.

총 편차 = ( 에 기인하는 편차) + (잔차) 

위 식의 양변을 동시에 제곱하여 전체 데이터의 제곱의 합을 구하면 아래와 같다. 여기서 좌변을 총변동 SST(Total Sum of Squares)로 표현한다.

 

우변의 첫 번째 항은 각 수준효과 간의 차이에 기인하는 편차들의 제곱합이므로 처리제곱합 또는 급간 변동이라고 부르고 SSA로 나타낸다. 우변의 두 번째 항은 각 처리수준 내에서의 잔차들의 제곱합이므로 잔차제곱합 또는 급내변동이라고 부르고 SSE로 표현한다.


 

위의 값을 일일이 계산하는 방법도 있지만 간편계산법도 있다.


도움이 되셨으면 공감 한번  눌러주세요^^

[실험계획법] 일원배치법


일원배치법은 한 인자에서 3개 이상의 처리(온도, 압력, 품종 등)에서 모평균의 차이가 있는지 비교하는 방법이다.

일원배치법은 다음과 같은 경우에 흔히 활용된다.

  • 특성값에 영향을 미치는 다양한 요인 중에서 특정 요인의 영향을 조사하고자 할 경우
  • 특성값에 영향을 미치는 여러 요인에 대한 검증이 어느 정도 진척되고, 이들 요인 중에서 특성값에 큰 영향을 미칠 것으로 예상되는 특정한 한 요인의 영향을 조사하고자 할 경우


일원배치법은 수준 수와 반복 수에 제한이 없으며, 결측치가 있어도 분석이 용이하다는 장점이 있다.

요인수준의 선택에는 두 가지 방법이 있다. 하나는 실험자가 스스로 특정한 실험 수준을 선택하는 것이고, 다른 하나는 특정 범위 내에서 임의로 선택되는 경우이다. 실험자가 특정한 실험 수준을 선택하는 경우, 요인의 수준이 고정되었다고 하며, 고정 모형 또는 모수 모형이라고 부른다. 반면 처리 수준이 일정 범위 내에서 랜덤하게 선택되는 경우, 랜덤 모형 또는 변량 모형이라고 한다.

고정 요인은 특정 온도, 압력 등과 같이 각 수준이 기술적인 의미를 갖기 때문에 특정 수준에서의 효과와 최적 조건을 구하는데 관심이 있다.

반면 랜덤 요인은 원자재 로트, 실험이르 작업자 등과 같이 요인의 수준이 랜덤하게 선택되는 경우로, 반응치(특성치)가 기술적인 의미를 갖지 못하기 때문에 수준 간의 산포의 크기인 분산 성분에 관심이 있다.



이 표와 같이 인자의 수준에 따라서 실험을 반복하고 그 평균을 계산한다. 우리가 알고 싶은 건 인자의 수준에 따라 평균->모평균에 차이가 있는지 여부이다. 이를 통계적으로 검정하기 위해서는 각 수준에 대한 모집단 모형이 필요하다. 이때, 각 수준에 해당하는 모집단은 서로 독립적이고, 평균이 , 공통 분산 을 갖는 정규 분포라고 가정한다. 여기서 귀무 가설대립 가설은 아래와 같다.

H0 : 각 수준 별 평균이 모두 같다.

H1 : 모든 평균이 같은 것은 아니다.

인자의 수준에 따라 실험 결과가 다르면(인자가 유의미한 차이를 만들면) 대립 가설 H1이 채택될 것이다.


a개의 모평균에 차이가 있는지 검정하는 것은 a개의 수준 효과 간 차이가 있는지 검정하는 것과 같으므로 수준효과 간 차이를 라고 한다면, 가설을 다음과 같이 표현할 수 도 있다.

H1 : 모든 가 0인 것은 아니다.(적어도 하나의 는 0이 아니다.)


그러면 어떻게 검정 할까?

분산분석을 이용!


분산분석 바로가기 



도움이 되셨으면 공감 한번  눌러주세요^^

[확률] R 주사위 던지기


주사위를 무작위로 던지는 간단한 예제를 R로 구현 해보자.



아래는 R Command

> par(mfrow=c(2,2)) 

# 빈 윈도우 띄우기 2행 2열의 테이블을 그릴 수 있음

> dice20 = sample(1:6, 20, replace = TRUE)

# 1부터 6까지의 수 중 하나를 무작위로 선택, 20회 시행

> barplot(table(dice20)/20, ylim=c(0,0.5), main="(a) n=20")

> dice100 = sample(1:6, 100, replace = TRUE)

> barplot(table(dice100)/100, ylim=c(0,0.5), main="(b) n=100")

> dice1000 = sample(1:6, 1000, replace = TRUE)

> barplot(table(dice1000)/1000, ylim=c(0,0.5), main="(c) n=1000")

> dice10000 = sample(1:6, 10000, replace = TRUE)

> barplot(table(dice10000)/10000, ylim=c(0,0.5), main="(d) n=10000")


결과 화면은 아래와 같다.



도움이 되셨으면 공감 한번  눌러주세요^^

[통계분석] 유의성 검정(2) - 유의확률, Z 검정, T 검정, 카이제곱 검정



가설검정을 수행하려면 유의확률이 무엇인지 알아야 한다. 아마 다들 p-값이라는 걸 한번쯤은 들어봤을 것이다. 

p-값은 유의확률이라고도 하며 0.05의 유의수준이라고 함은, 쉽게말해 내가 주장하는 가설이 우연한 현상일 확률이 5% 미만이라는 뜻이다.

즉, 귀무가설 H0가 옳을 때 0.05 이하의 확률로 발생하는 사건이라야 H0에 배치되는 증거로 인정하여 대립가설을 채택한다는 의미이다.


유의수준이 낮을 수록(예를 들어 0.01) 우연을 가장한 현상일 확률을 배제함으로서 더 신뢰도 있는 대립가설이 된다.

(요즘에는 유의확률 개념 자체가 오류를 일으킬 만한 소지가 다분하다는 이유로 p-값에 의한 가설검정을 안 믿기도 한다.)



1. 모평균의 검정

1) 모분산을 아는 경우

정규분포를 따르는 모집단에서 추출한 랜덤표본을 이용하여 유의성검정(1)의 글에서 같이 모평균에 대한 가설을 검정하는 경우이다. 모분산을 아는경우에는 Z 검정(Z-test) 통계량을 사용하며

                   

시그마 : 표준편차, n : 표본의 개수, Xbar : 표본평균, u : 모평균(가설)

 

예제) 어떤 과즙의 당분 함량을 분석을 통해 아래와 같이 얻었다. 이로부터 당분의 평균 함량이 14.3%라는 주장이 옳은지 유의수준 0.05에서 검정해보자.

과거의 경험에 의하면 과즙의 당분 함량은 정규분포를 따르고, 모표준편차는 0.75라고 알려져있다.


위의 함수에서 Z.TEST는 z-검정의 단측 p 값을 나타내는 것이므로 곱하기 2를 해준다. 그리고 데이터와 u, 모표준편차를 입력하면 된다.

결과값은 0.164로 0.05보다 크므로 대립가설이 기각된다.(가설이 받아들여지지 않음)

 

2) 모분산을 모르는 경우

모분산을 모르는 경우 모평균 u에 대한 가설검정은 모표준편차 대신에 표본표준편차를 사용한다. 그리고 통계량은 T-검정통계량을 사용한다.

검정 통계량 T  

 

표본 표준편차 S

 

엑셀 함수는 T.DIST(x, 자유도, Tails) 단측검정의 Tails=1, 양측검정은 Tails=2이다.



도움이 되셨으면 공감 한번  눌러주세요^^

[통계분석] 유의성 검정(1) - 대립가설과 귀무가설, 가설 검정



우리는 대부분 표본을 가지고 모집단을 추정하곤한다. 모집단의 분포를 추정, 가정하는 것을 가설이라고 하며, 표본을 이용하여 가설의 옳고 그름을 판정하는 것을 가설검정 또는 유의성 검정이라고 한다.


통계적 가설은 귀무가설과 대립가설로 나눌 수 있으며, 수집된 자료를 이용하여 주장하고 싶은 가설을 대립가설(H1)이라고 하고, 이와 반대되는 가설을 귀무가설(H0)라고 한다.


예를 들어 보자.

어느 제약회사에서 생산하는 진통제 A는 복용 후 30분부터 진통효과가 나타나는 것으로 알려져 있다. 회사의 연구진은 새로 개발된 진통제 B가 기존의 진통제 A보다 진통효과를 더 빨리 나타낸다고 주장하고 있다. 과연 연구진의 주장이 옳은지 여부를 확인하기 위해 36명의 환자를 랜덤 추출하여 진통제 B를 복용시킨 후, 진통효과가 나타나는 시간을 측정한 결과, 표본평균이 29분 이었다고하자. 과거의 경험에 의하면 표준편차는 3분이라고 한다. 연구진의 주장이 옳은가?


여기서 연구진이 주장하고자 하는 것은 새로운 진통제가 진통효과를 나타내는 시간이 30분보다 짧다(u<30)는 것이다. 따라서 대립가설은 

H1 :u<30 이고, 귀무가설 H0 : u>=30이다.

(이렇게 30을 기준으로 크다 작다를 나누는 것을 단측가설이라고 하고 H0: u = 30, H1 : u != 30 인 경우는 양측가설이라고 한다.)


위의 가설 중 어느 가설이 옳은지 알아보기 위해서는 표본평균 Xbar를 계산하여 그것의 값이 크면 귀무가설이 옳다고 판단하고, 그 값이 작으면 대립가설이 옳다고 판단한다. 이때 가설의 옳고 그름 여부를 판단하는데 사용하는 통계량을 검정 통계량이라고 한다. 이 문제의 경우는 모평균에 대한 가설 검정 문제이므로 Xbar가 검정통계량이 된다.


검정통계량이 정해지면 검정통계량의 값이 어느 정도일때 귀무가설이 옳다고 판단하느냐 하는 기준을 선택히야한다. 이를 위해 귀무가설을 기각하는 검정통계량의 값의 영역인 기각역을 설정한다. Xbar < c 일때 귀무가설을 기각할텐데, 이 c의 값을 결정하기 위해서는 Xbar의 분포를 알아야 한다.




도움이 되셨으면 공감 한번  눌러주세요^^

[6 시그마] 5. 개선단계 - SOP, DOE


개선(Improvement)단계에서는 분석단계에서 추출한 여러 핵심인자에 대한 개선조치를 하여 종속변수를 최적의 상태로 만드는 것이 목표이다.


핵심인자는 그 성격에 따라 다음과 같이 세 가지 형태로 구분할 수 있다.

  • 단순한 개선을 필요로 하는 단순개선인자
  • 절차를 표준화하여 개선 할 수 있는 인자
  • 실험계획법을 통해 최적조건을 도출해야 하는 복잡한 인자.

이 중 첫 번째, 단순개선인자의 예로는, A부품보다 B부품을 쓰는 것이 비용, 품질 등의 면에서 좋다면 B를 선택하는 것이다.

두번째로 절차를 표준화 함으로써 개선을 할 수 있는 경우 표준화(예를 들어 SOP(Standard Operating Procedure)를 통해 개선할 수 있다.

마지막으로 핵심인자가 서로 상호관계를 가지고 종속변수에 영향을 미치는 복잡한 경우 실험계획법(Design Of Experiment, DOE)을 이용하여 개선을 꾀한다. 실험계획법을 적용하여 실시한 실험에서 나온 데이터를 분석하면 치명적 소수인자를 가려낼 수 있다.

개선 후 종속변수의 변동으로 인해 나타나는 시그마 수준이나 COPQ(Cost Of Poor Quality)의 차이를 통해서 개선이 얼마나 성과가 있었는지 파악할 수 있다. COPQ는 개선의 효과를 금액으로 환산하는 척도이다.



실험설계 개요


실험을 계획할 때에는 고려해야 할 사항이 몇가지 있다. 

1) 랜덤화 : 실험 단위나 순서를 랜덤하게 결정하여, 순서에 의한 영향을 배제하는 방법으로 난수표 등을 이용할 수 있다.

2) 반복 : 똑같은 실험을 여러 번 하여 추정치의 불확실성을 줄여주기 위해 사용한다. 하지만 비용도 증가한다.

3) 블록화 : 대조군의 조건이 같은 경우 블록화가 필요없지만, 조건이 다르다면 블록화를 먼저 해야한다.



일원배치법 (link)


일원배치법(one-way ANOVA)이란 관심의 대싱이 되는 하나의 인자(factor)와 종속변수 또는 산출물 간의 관계를 밝히기 위해 어떻게 실험을 실행하고, 이로부터 나온 데이터를 어떻게 분석하는지 살펴보는 것이다.


1) 모수인자(fixed factor)

    인자가 고정된 경우(예를 들어 반응기의 온도가 80, 100도씨인 경우)이다. 모수인자는 고정인자라고도 부른다.

    '이 인자의 수준에 따라 반응치가 달라지는지', '반응값에 대한 최적 조건은 무엇인지'가 분석의 관심사이다.


2) 변량인자(random factor)

    예를 들어 선정된 반응 온도가 아주 많은 반응 온도 중 랜덤하게 일부 뽑힌 경우이다. 변량인자의 경우에는 각 수준(예: 온도 조건)이 기술적으로 큰 의미를 가지지 못하므로 변랑인자의 수준 간 산포의 크기와 이 추정치가 반응값의 총 분산 중에서 차지하는 비율에 대해 관심이 있다.

 

[데이터 분석] 상관분석(Correlation)과 교차 상관분석(Cross Correlation)



상관분석의 목적은 변수 간의 상관선을 파악하고, 더 나아가서는 회귀분석을 위한 변수 선택 과정이다.


입력 변수 : 출력 변수 = 독립변수 : 종속변수 = 설명 변수 : 반응변수


입력변수가 서로 독립적일 경우 독립 변수라고 할 수 있다. 

하지만 일상생활이나 공장의 데이터는 입력 변수 간에도 상관성을 가지고 있다.


이런경우에 PCA(Principal Component Analysis) : 주성분 분석을 활용하기도 한다.


상관 분석 결과는 -1에서 1사이의 값을 갖는다.

X와 Y의 상관 분석 결과 값이 1에 가까울 수록 X가 증가 할 때, Y도 증가하는 경향이 강하다는 뜻이고,

-1에 가까울수록 반대의 경향성을 나타낸다.


데이터가 시시각각 바뀌는 경우, 또는 X, Y사이에 시간차가 있는 경우는 일반적인 상관분석이 무용지물이다.


그런 경우 사용하는 것이 교차 상관분석이다.


아래의 표에서 SinX와 CosX를 보면 두 데이터의 상관성이 0.019로 매우 낮은 상관성을 가진다고 한다.

변수의 특성을 모르고 데이터를 분석하는 상황에서 이 값만 본다면 두 변수는 상관성이 없는 데이터라고 판단하기 쉽다.

하지만 변수의 특성을 안다면, 두 변수는 시간차만 있을 뿐 상관성이 매우 높을 것이라는 것을 짐작 할 수 있다.



그렇다면, 교차 상관분석을 한 후의 결과는 어떨까?

SinX에 대한 다른 데이터를 교차 상관분석 한 결과 상관성이 1로 나오는 것을 알 수 있다.


여기서는 매우 단순한 예로 삼각함수로 예를 들었지만 타임 딜레이가 있는 데이터 셋의 경우 교차 상관분석도 필요 할 수 있다는 것을 명심하자.



+ Recent posts