모의실험

Population 2008년 10월 29일 01시

음... 
복습이다.
저장된 기억을 인출해보자.
가끔 인출에 실패할 수 있으나 걱정할거 없다.
다시 저장시키면 된다.

먼저 정규분포를 따르는 난수를 생성하려는데
이때 평균과 분산은 임의로 지정한다.

21

이렇게해서 각각의 집단은 두 변수 X₁, X₂로 구성된 집단이 된다.
모수를 임의로 정했으니 이제 난수를 생성한다.

22

b9 셀
=NORMINV(RAND(),B$4,B$5)

Rand 함수 보다 RandBetween 함수가 좀더 적절해 보이는데 쉽게쉽게 가련다.
그리고 난수를 생선한 후 이를 복사하여 값으로 선택하여붙여넣기를 한다.
이를 값으로 고정시키지 않는다면...
엑셀은 난수 생성만 열심히 할거다.

이렇게 생성된 자료는 아래와 같은 평균과 분산을 가진다.

23

표본크기 = Count(범위)
평균 = Average(범위)
분산 = Var(범위)
표준편차 =Sqrt(분산)
공분산행렬 =CoVar(범위1,범위2)

그리고 이렇게 생성된 자료를 그래프로 나타내면...

24

그런데 이 그림은 사실 잘 못된 그림이다.
원래는 입체적으로 나타내야하는데 그 방법을 몰라 대충 그렸으니, 단순 참고만하길 바란다.
(그리고 별로 알고 싶지도 않다. 그래프와는 안 친하다.)

그리고 이렇게 생성된 난수를 가지고 판별분석을 해보자.
일전에는 변수 한 개로 구성된 집단이었다면, 이번엔 변수 두 개로 구성된 집단의 판별이다.
(여기선 간편(?) 계산 방법 정도로만 다룬다.)

앞서 정규분포를 따르는 난수를 생성했는데, 정규분포를 따르는지를 우선 살펴봐야한다.
판별분석의 가정 중 하나가, 이용되는 변수가 정규분포를 따른다고 가정하고 있기에
확인해 보는거다.

그런데 만약 정규분포가 아닌 다른 분포를 따른다고하면 어찌해야하나?
다른 분포를 따른다면 그 분포에 맞는 분석 이론을 알아야 하는데...
물론 지금은 예전 보다 더 세련되어지고 발전하여 판별력도 높아졌겠지만,
개구멍으로 빠져나올 때 다 반납하고 나왔다.  -_-;;
그런데 정규분포가 아닌 다른 분포를 이용한 판별분석이 있긴 있나... -_-a
(대부분의 통계 분석에서 빠지지 않는 가정은 '정규분포를 따른다' 이다.)

그렇다해도 가정을 만족하는지 대충이라도 살펴는 봐야겠다.
원래는 정규성 검정을 이용해 검토해야하는데 이 또한 대충 넘어간다.

25

변수 각각에 대해 도수분포표를 구해 히스토그램으로 나타낸 결과
정규분포 비슷은 해 보이는데... 역시 난수를 더 많이 생산할걸 그랬나 보다. -_-a

이쯤에서 마하라노비스 거리라는게 하나 튀어 나온다.
대충 표준화 정도로 생각하면 된다.

26

h9 셀
=N(SQRT(MMULT(MMULT(($B9:$C9-$B$66:$C$66),MINVERSE($B$70:$C$71)),TRANSPOSE($B9:$C9-$B$66:$C$66)))<SQRT(MMULT(MMULT(($B9:$C9-$F$66:$G$66),MINVERSE($F$70:$G$71)),TRANSPOSE($B9:$C9-$F$66:$G$66))))

i9 셀
=N(SQRT(MMULT(MMULT(($F9:$G9-$B$66:$C$66),MINVERSE($B$70:$C$71)),TRANSPOSE($F9:$G9-$B$66:$C$66)))<SQRT(MMULT(MMULT(($F9:$G9-$F$66:$G$66),MINVERSE($F$70:$G$71)),TRANSPOSE($F9:$G9-$F$66:$G$66))))

배열수식이므로 입력시 Ctrl+Shift+Enter를 동시에 눌러야한다.

이론대로 한다면...
공분산행렬의 동일여부를 검증한 후 공통행렬을 구해야 하지만 여기선 대충 건너뛰었다.
아무튼 오늘 '대충' 무지 많이 나온다... -_-
(판별분석에 대한 자세한 내용은 별도 확인 바람.)

위에 보여지는 '판별'은 기존 주어진 자료를 이용해 해당 자료를 판별한 것이다. 
즉 h 열은 주여진 '집단 가'의 자료를 검토하는데,
그 결과가 '1'이 나오면 '집단 나' 보다 '집단 가'에 더 가깝다는 것이고
'0'이 나오면 '집단 가' 보다 '집단 나'에 더 가깝다는 것이다.

그리고 이와 반대로 i 열은 '집단 나'의 자료를 검토하는데, 
'0'이 나오면 '집단 가' 보다 '집단 나'에 더 가깝다는 것이고
'1'이 나오면 '집단 나' 보다 '집단 가'에 더 가깝다는 것이다. 
이 결과 이미 알려진 집단일지라도 판결분석에서는 다르게 나올 수 있다.

30

k3 셀
=COUNTIF(OFFSET($H$9:$H$58,0,ROW($A1)-1),2-COLUMN(A$1))

그리고 두 집단이 근접(?) 할수록 잘 못 판별할 가능성은 높아진다.

뭐 당연한거다.
두 집단이 근접한다면 집단간 차이는 줄어든다는 것이고,
차이가 줄어든다는 것은 두 집단이 동일한 집단의 일부라는 반증이 된다.
그리고 이는 변수 선별에 따라 영향을 받을 수 있다.
그래서 변수를 잘 선별해야하는거다.

맨 위에 난수를 생성하는데 제시한 모수를 조절해가며 난수를 생성해보자.
즉 집단간 모수의 차이가 확연 할 때 또는 두루뭉실 할 때의 판별결과를 살펴보면
도움이 된다.

이쯤에서 앞에 (잘 못된) 그림에 판별선(?)을 삽입해본다. 
선을 그리기 위해선 두개의 좌표가 필요하니 우선 좌표부터 만들어야한다.

27

q4 셀
=PERCENTILE(($B$9:$B$58,$F$9:$F$58),CHOOSE(ROW(A1),0.1,0.9))

s4 셀 (배열수식)
=ABS(SQRT(MMULT(MMULT(($Q4:$R4-$B$66:$C$66),MINVERSE($B$70:$C$71)),TRANSPOSE($Q4:$R4-$B$66:$C$66)))-SQRT(MMULT(MMULT(($Q4:$R4-$F$66:$G$66),MINVERSE($F$70:$G$71)),TRANSPOSE($Q4:$R4-$F$66:$G$66))))

원래는 판별함수를 구한 후 마하라노비스 거리를 계산해야하나,
계산이 조금(?) 복잡해 역으로 추정하기 위해 엑셀의 해찾기 기능을 이용하였다.

28

이렇게 r4, r5 셀 값은 각각 역계산하여 얻은 값이다.

그리고 좌료를 그래프에 삽입한다.

29

어째 그럴듯 한가?
판별선 좌측 아래는 '집단 가'로 판별하고, 우측 위는 '집단 나'로 판별하는 것이다.
다시 말하지만 위에 그림은 입체를 평면에 나타내는 한계 때문에 정확한 정보는 아니다.

이제 날아가는 미지의 새 한마리를 낚아채서 X₁, X₂정보를 알아낸 후 판별해보는거다.

넌 북녘 새니, 남녘 새니?
그도 아니면 잡새니?

트랙백 주소 :: http://instatistics.officetutor.org/trackback/1107

댓글을 달아 주세요