더북(TheBook)

카이 제곱 검정(Chi-Squared Test)

7.4.3절에서 카이 제곱 검정을 사용한 변수 간 독립 여부 판단에 대해 살펴보았다. 마찬가지 방법을 예측 대상이 되는 분류와 변수 간에 수행하여 변수와 분류 간의 독립성을 검정해볼 수 있다. 만약 둘 간의 관계가 독립이라면 해당 변수는 모델링에 적합하지 않은 것으로 볼 수 있다. 반대로 독립이 아니라면 모델링에 중요한 변수로 볼 수 있다. 카이 제곱 검정을 사용한 변수 선택에는 FSelector::chi.squared( )를 사용한다.

표 9-9 독립성 검정을 사용한 변수 선택

FSelector::chi.squared : 카이 제곱 검정을 사용한 독립성 검정으로 변수의 가중치를 계산한다.

FSelector::chi.squared(
  formula, # 모델에 대한 포뮬러 표현
  data     # 포뮬러를 적용할 데이터
)

반환 값은 독립성 검정에 따라 구한 변수의 중요도 가중치다.

다음은 mlbench의 Vehicle 데이터에 대해 FSelector의 chi.squared( )로 변수들의 중요도를 평가하고 그중 세 개의 변수를 선택한 예다.

> library(FSelector)
> library(mlbench)
> data(Vehicle)
> (cs <- chi.squared(Class ~., data=Vehicle))
            attr_importance
Comp              0.3043172
Circ              0.2974762
D.Circ            0.3587826
Rad.Ra            0.3509038
Pr.Axis.Ra        0.2264652
Max.L.Ra          0.3234535
Scat.Ra           0.4653985
Elong             0.4556748
Pr.Axis.Rect      0.4475087
Max.L.Rect        0.3059760
Sc.Var.Maxis      0.4338378
Sc.Var.maxis      0.4921648
Ra.Gyr            0.2940064
Skew.Maxis        0.3087694
Skew.maxis        0.2470216
Kurt.maxis        0.3338930
Kurt.Maxis        0.2732117
Holl.Ra           0.3886266
> cutoff.k(cs, 3)
[1] "Sc.Var.maxis" "Scat.Ra"     "Elong"
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.