본문 바로가기
설문지 분석에는 다양한 분석이 사용된다. 놀라지 마세요. 응?

보통 데이터 분석을 할 때는 설문지를 통해 확보된 데이터를 분석하는 경우가 꽤 많이 있습니다. 예전에는 길거리에서 설문을 해달라고 부탁하는 사람들이 보였는데, 최근에는 모두 온라인 설문으로 형태가 바뀐 것 같습니다. 어찌 되었든, 사회분야의 연구를 할 때는 설문지를 통해서 통계분석을 하기 마련이니까. 이제까지 배워온 것을 망라하여 적당히 설문지를 분석하는 것에 대해서 대략 알고 넘어가는 것도 데이터를 다루는 입장의 상식선에서 매우 도움이 되겠습니다. 

다짜고짜 다음의 설문지가 있다고 해 봅시다. 쭉 응답해 보고, 어떤 분석을 할수 있을지 상상하면서 봐주세요.


⑴ 귀하의 성별은?  남/ 여

⑵ 귀하의 연령은?  ⓵ 10대 ⓶ 20대 ⓷ 30대 ⓸ 40대 ⓹ 50대 

⑶ 귀하는 OTT(예:너튜브) 시청을 할 때 1회에 어느정도 시간을 할애하십니까? 
    ⓵ 30분 미만 ⓶ 30~60분 ⓷ 60~90분 ⓸ 90~120분 ⓹ 120분 이상 
 
⑷ 귀하는 OTT로 시간을 보내는 것에 대하여 유익하다고 생각하십니까?
     ⓵ 매우부정 ⓶ 부정 ⓷ 보통 ⓸ 긍정 ⓹ 매우긍정 

 ⑸ OTT 작품 선택시 선택에 대한 영향을 받은 정도를 선택해 주세요.
     ㈀ 친구추천의 영향을 많이 받았다.
          ⓵ 매우부정 ⓶ 부정 ⓷ 보통 ⓸ 긍정 ⓹ 매우긍정 
     ㈁ 인터넷의 영향을 많이 받았다.
          ⓵ 매우부정 ⓶ 부정 ⓷ 보통 ⓸ 긍정 ⓹ 매우긍정 
     ㈂ OTT 추천엔진의 추천 작품
          ⓵ 매우부정 ⓶ 부정 ⓷ 보통 ⓸ 긍정 ⓹ 매우긍정 

⑹ OTT 서비스를 즐기는 이유를 선택해 주세요.
     ㈀ 여가시간 활용
          ⓵ 매우부정 ⓶ 부정 ⓷ 보통 ⓸ 긍정 ⓹ 매우긍정 
     ㈁ 관심있는 기술의 습득 
          ⓵ 매우부정 ⓶ 부정 ⓷ 보통 ⓸ 긍정 ⓹ 매우긍정 

⑺ OTT 서비스를 즐기게 됨으로 얻은 만족 정도
     ㈀ 지금의 여기시간의 방법으로 만족한다. 
          ⓵ 매우부정 ⓶ 부정 ⓷ 보통 ⓸ 긍정 ⓹ 매우긍정 
     ㈁ 정서적 안정감을 갖게 되었다.
          ⓵ 매우부정 ⓶ 부정 ⓷ 보통 ⓸ 긍정 ⓹ 매우긍정 

⑻ OTT 서비스를 구독하는데 한달에 소요되는 비용
      ⓵ 1만원 이하 ⓶ 1-3만원 ⓷ 3-5만원 ⓸ 5-10만원 ⓹ 10만원 이상 

⑼ OTT 컨텐츠에 대한 재구매 의사 
     ㈀ OTT 서비스를 재이용할 의향이 있다.
          ⓵ 그렇지 않다 ⓶ 그렇지 않은 편이다 ⓷ 보통이다 ⓸ 그런 편이다 ⓹ 매우 그렇다
     ㈁ OTT를 타인에게 권유하고 싶다. 
          ⓵ 그렇지 않다 ⓶ 그렇지 않은 편이다 ⓷ 보통이다 ⓸ 그런 편이다 ⓹ 매우 그렇다
     ㈂ 가급적 다른 서비스를 이용하고 싶다. 
          ⓵ 그렇지 않다 ⓶ 그렇지 않은 편이다 ⓷ 보통이다 ⓸ 그런 편이다 ⓹ 매우 그렇다

음. 수고하셨습니다. 어디서나 볼 수 있는 흔하디 흔한 설문지로군요. 자, 이제 문항들을 자세히 들여다볼 준비를 하시고. 일단 먼저 생각해야 할 것이 설문에서 받는 0~5점으로 설문을 받는데, 이것을 리커트 척도라고 부릅니다. 그렇다면, 리커트 척도는 도대체 다루어야 하는가? 이것은 순서가 있는 명목인가 아니면 일반적인 숫자로 취급해야 하는가 하는 질문이 있겠습니다. 결론부터 이야기하자면, 리커트는 연속형 변수로 취급 하면되고, 연속형 변수로 취급할 수 있다면 심지어 Pearson 상관분석도 가능합니다. 게다가 이 리커트를 이용해서 평균이라도 계산하게 된다면, 충분한 크기의 설문조사 결과를 확보한 경우에는 중심극한정리를 냅다 적용해서 분석이 가능합니다.  그러니까 리커트 척도는 측정형으로 생각할 수 있다는 것인데, - 마치 국어성적, 영어성적처럼 말이죠. - 한발 더 나아가서 생각해 본다면. 분산을 만들 수만 있다면 t, ANOVA 등이 가능합니다. 특이한 예를 들면 행복도 같은 것도 점수라고 보고 평균을 내고 분산이 있을 수 있다면! 연속형 변수에 대한 분석이 가능한 이야기가 되겠습니다. 

그러면, 이제부터 설문의 항목들에 대해서 어떤 분석들이 가능한지 한번 보도록 하시죠. 

⑴⑵ 문항으로 벌써 t Test와 ANOVA를 떠올렸다면 성공입니다. 왜냐하면 ⑴ 문항으로 2개 집단, ⑵문항으로 3개 이상의 집단을 구분할 수 있으니까요.

⑴ 귀하의 성별은?  남/ 여

⑵ 귀하의 연령은?  ⓵ 10대 ⓶ 20대 ⓷ 30대 ⓸ 40대 ⓹ 50대 

그렇죠?

➊ t Test 
 
⑴ 귀하의 성별은?  남/ 여

⑶ 귀하는 OTT(예:너튜브) 시청을 할 때 1회에 어느정도 시간을 할애하십니까? 
⓵ 30분 미만 ⓶ 30~60분 ⓷ 60~90분 ⓸ 90~120분 ⓹ 120분 이상 

이런 식으로 두 문항을 연결해서 본다면, 남녀 각각 집단의 OTT시청 시간의 평균을 구해서, 남녀 집단에 대하여 OTT를 보는 시간이 차이가 없다.는 귀무가설을 검정할 수 있겠습니다.  

➋ ANOVA

⑵ 귀하의 연령은?  ⓵ 10대 ⓶ 20대 ⓷ 30대 ⓸ 40대 ⓹ 50대 ; 일단 5개의 집단으로 구분할 수 있겠군요.

⑸ OTT 작품 선택시 선택에 대한 영향을 받은 정도를 선택해 주세요
     ㈂ OTT 추천엔진의 추천 작품
          ⓵ 매우부정 ⓶ 부정 ⓷ 보통 ⓸ 긍정 ⓹ 매우긍정 

이런 식으로 두 문항을 연결해서 본다면, 각 연령대에 대하여 OTT추천엔진 추천작품을 선택하는 것에는 차이가 없다.는  귀무가설을 검정할 수 있겠습니다. 


➌ 상관분석

⑸ OTT 작품 선택시 선택에 대한 영향을 받은 정도를 선택해 주세요.
     ㈀ 친구추천의 영향을 많이 받았다.
          ⓵ 매우부정 ⓶ 부정 ⓷ 보통 ⓸ 긍정 ⓹ 매우긍정 
     ㈁ 인터넷의 영향을 많이 받았다.
          ⓵ 매우부정 ⓶ 부정 ⓷ 보통 ⓸ 긍정 ⓹ 매우긍정 
     ㈂ OTT 추천엔진의 추천 작품
          ⓵ 매우부정 ⓶ 부정 ⓷ 보통 ⓸ 긍정 ⓹ 매우긍정 

⑺ OTT 서비스를 즐기게 됨으로 얻은 만족 정도
     ㈀ 지금의 여기시간의 방법으로 만족한다. 
          ⓵ 매우부정 ⓶ 부정 ⓷ 보통 ⓸ 긍정 ⓹ 매우긍정 
     ㈁ 정서적 안정감을 갖게 되었다.
          ⓵ 매우부정 ⓶ 부정 ⓷ 보통 ⓸ 긍정 ⓹ 매우긍정 

⑸⑺을 이용해서 무엇에서 영향을 받았느냐와  각각의  만족정도의 항목들이 상관관계가 있는지를 볼 수 있겠습니다. 오호.


➍ 회귀분석

⑶ 귀하는 OTT(예:너튜브) 시청을 할 때 1회에 어느정도 시간을 할애하십니까? 
⓵ 30분 미만 ⓶ 30~60분 ⓷ 60~90분 ⓸ 90~120분 ⓹ 120분 이상 
 
⑻ OTT 서비스를 구독하는데 한달에 소요되는 비용
      ⓵ 1만원 이하 ⓶ 1-3만원 ⓷ 3-5만원 ⓸ 5-10만원 ⓹ 10만원 이상 

⑶⑻을 이용하여, 한달에 OTT에 소요되는 비용과 시청시간의 관계를 회귀분석할 수 있겠군요. 결국, 이 두 개의 문항을 비교하여 두 문항이 선형적인 관계가 있는지 볼 수 있겠습니다. 당연히 이것도 상관분석 역시 가능하겠죠. 

➎ 신뢰도 분석 (크론바흐 알파) 
 
⑼ OTT 컨텐츠에 대한 재구매 의사 
     ㈀ OTT 서비스를 재이용할 의향이 있다.
          ⓵ 그렇지 않다 ⓶ 그렇지 않은 편이다 ⓷ 보통이다 ⓸ 그런 편이다 ⓹ 매우 그렇다
     ㈁ OTT를 타인에게 권유하고 싶다. 
          ⓵ 그렇지 않다 ⓶ 그렇지 않은 편이다 ⓷ 보통이다 ⓸ 그런 편이다 ⓹ 매우 그렇다
     ㈂ 가급적 다른 서비스를 이용하고 싶다. 
          ⓵ 그렇지 않다 ⓶ 그렇지 않은 편이다 ⓷ 보통이다 ⓸ 그런 편이다 ⓹ 매우 그렇다

이것은 조금 다른 이야기이긴 한데, 재구매의사 (즉, 충성도)를 일관적으로 측정하고 있는가를 알아보는 것인데 말이죠. 이것이 진짜 신뢰도가 있는 조사 결과인지 알아볼 수가 있습니다. 의도와는 조금 다르지만, 이이기는 바로 크론바흐 알파 이야기로 흘러갑니다...  

설문지를 맞닥트리고 보니, 리커트 척도라는 것을 만나게 되었는데 말이죠. 설문을 하고 나면 과연 이 설문이 믿을 수 있게 측정된 설문일까 하는 의문이 드는 것이 인지상정이겠습니다. 이때, Cronbach크론바흐 알파라는 값이 등장하게 되는데 말이죠. 이 값은 동일한 개념을 측정하는 여러 항목들에 대한 항목 분석과 신뢰도 계수 계산을 목적으로 하는데, 심적 일관도라고도 합니다. 호. 그리고, 한 개념을 나타내는 적어도 2개 이상의 문항들이 있어야 합니다. 그렇긴 한데, 이게 무슨 말이란 말인가요. 희번득. 이른바 리커트 척도와 크론바흐 알파값의 신뢰도 분석에 관련한 이야기입니다. 

즉, 예를 들어, 오징어를 좋아한다는 것을 어떻게 측정할까요? 사람마다 오징어를 좋아하는 것을 표현하는 것이 다릅니다. 

오징어 기호 측정 문항

1) 전반적으로 맛에 만족한다
2) 주변에 오징어 맛을 모르는 사람이 있다면 추천하겠다. 
3) 오징어 값이 오르더라도 계속 먹겠다. 
4) 오징어는 계속 먹을 의향이 있다. 
5) 오징어를 먹을 바에야 문어를 먹겠다. 

이렇게 해서 앞에 5개 문항이 모두 동일한 의미의 응답을 했다면 내적 일관성이 매우 높은 것으로 판단합니다. - 예를 들면, 예,예,예,예,아니오의 선택하는 것이 문어에게는 미안하지만 일관성이 높은 좋은 선택이라고 생각합니다. 후후 - 

이렇게만 이야기한다면 내적 일관성이 낮은 사람을 골라낼 수 있다는 의미로 받아들여질 수 있겠는데, 그렇지는 않고 전반적으로 조사가 잘 되었는지 또는 설문지가 신뢰도 있게 설계되었는지를 판단하는 것입니다. 물론 특정 개인의 해당 문항들에 대한 답변이 분산이 큰 것들을 골라내면 불성실 답변을 한 개인을 골라낼 수 있는 방법으로도 의미가 있겠군요. 
크론바흐 알파는 어떻게 계산하는가 하면

으로 계산하는데 복잡해 보이지요? 별건 아니고,  전체의 분산 비해서 각각의 분산의 합이 작아야 1에 가까워지고, 좋다는 것이니까, 전체의 분산에 대해 각각의 분산의 합이 작아야 한다는 의미이므로 그렇게 되면  모든 문항에 대한 응답의 분산이 서로 비슷해서 일관성이 있다는 뜻이고, 어느 정도 일관성 있는 조사를 하였다는 의미로 간주합니다. 크론바흐 알파는 "정상적"이라면 0~1사이의 값을 갖게 되고, 보통은 0.7을 기준으로 하는 것이 관습입니다. - 완전 랜덤이라면 각 항목의 분산의 합이 전체 분산보다 커져서 Negative가 나오는 경우도 있습니다. -

각 항목별로 같은 일관성이 있다고 함은 다시 생각해 보면, 상관계수로도 뭔가 할 수 있겠는걸? 하는 생각이 드는데, 그래서 이 값을 상관계수로 정리하면 $$ \alpha = \cfrac{k\cdot r}{1+(k-1)r}$$ 
이런 식으로 구하기도 합니다. k는 문항수, r은 상관계수입니다. 

참고로 오징어는 1년이 보통 수명이지만, 찍 짓기를 못하면 2년을 산다고 합니다. 오래사는 것이 중요한 것인지, 찍짓기를 하는 것이 중요한 것인지 오징어 개인의 선호 차이가 있겠지만 말이죠. 

 크론바흐 알파를 계산하기 위해서 "요인분석"이라는 것을 하는 경우가 많은데, 요인분석의 결과로 몇 개의 변수들간의 같은 개념으로 묶이는 것을 발견할 수 있기 때문이긴 한데, 설문을 설계할 때 이미 고려하고 있기 때문에 굳이 그럴 필요까지는 없다고 생각하지만, 진짜 그런가 정도를 확인하려고 한다면 그 또한 의미있지 않은가 생각합니다. 

 아니 이렇게까지 크론바흐 알파를 하려던 것은 아니었는데, 어쨌든 여기까지 왔으니까, 당연히 크론바흐 알파값도 검정이 가능합니다. 코쓱.

표본크기가 n 크기의 표본, k개의 문항이 있다면,  Γₔ라는 통계량을 다음과 같이 다시 정의한다면 그것은 F 분포를 따릅니다. 이제는 감각적으로 분산의 비니까 F를 따르겠군. 훗. 이라고 생각할 정도는 된다고 생각합니다. 

$$ \Gamma_\theta \overset{\Delta}{=}  \cfrac{1-\gamma_0}{1-\gamma} \sim F(n-1, (n-1)(k-1))  $$ 

여기에서 γ는 측정한 크론바흐 알파값이고요,

Null Hypothesis는 γ<γ₀ 입니다.

그러니까, γ₀를 보통 신뢰할 수 있다고 생각되는  0.7정도로 두고 그때 측정된 γ를 통해 구한 Γₔ값을 통해서 p value를 계산합니다. 그때의 값이 유의 수준 보다 작다면 Null Hypothesis를 기각하는 것이죠. 

예를 들어, 어떤 오징어에 대한 설문에 대하여 질문수가 10개, 응답수 15이고, 이에 대한 Cronbach alpha값을 구했더니 0.713였고요. 우리가 일반적으로 신뢰도를 0.7이상이라고 생각한다면. 이것으로 부터 Derive할 수 있는 값들은 말이죠, 

n=15
k=5
γ = 0.713
γ₀ = 0.7
이떄의  Γₔ 통계량 = 1.045 
이때의  Γₔ 통계량에 의한 p value = 0.57이 됩니다?  어떻게 구했는지는 더 읽으면 알 수 있습니다. 


그렇다면 95% 신뢰수준에 대하여 p value가 0.56이므로 크론바흐 알파는 0.7보다 작다는 Null Hypothesis를 기각할 수 없습니다. 그러니까, 꽤나 신뢰도가 0.713으로 높다고 생각으나 모집단의 크론바흐 알파는 0.7보다 크기에는 무리가 있다고 볼 수 있겠습니다.만 실제로는 표본수가 작아서 이런 결과가 있지 않을까 생각하는 편이 훨씬 실용적 접근입니다. 보통의 경우라면, 표본수가 크고 이 정도의 크론바흐 알파값이라면 0.7보다 작다는 Null Hypothesis는 기각됩니다. 여기에서 크론바흐 알파와 통계량과는 반대의 경향을 보이므로, 1-(Γₔ의 p value)가 γ>γ₀에 대한 검정과 같습니다.

 

 

이것을 파이썬으로도 풀어봐야 하겠습니다. 그러면 더 확실하게 -바램이겠지만- 이해 할 수 있겠습니다. 

import pingouin as pg
pg.cronbach_alpha(data=df_cronbach)  # ➊ 크론바흐 알파를 구합니다. 
>
(0.7131185807656395, array([0.395, 0.891]))

Statistics = (1-0.7)/(1-pg.cronbach_alpha(data=df_cronbach)[0]) # ➋ 구해진 크론바흐 알파로 Γₔ를 구합니다. 
>
1.045728234336859

from scipy.stats import f
1-(1-f.cdf(Statistics, 14, 56)) # ➌ 구해진 Γₔ 통계량으로 p value를 구합니다. 
>
0.5754705774810172

 

하핫. 파이썬으로 풀어볼 수 있으니까, 한번 더 안심할 수 있겠습니다. 

친절한 데이터 사이언스 강좌 글 전체 목차 (링크) -



댓글





친절한 데이터 사이언스 강좌 글 전체 목차 (링크) -