지난 시간에 R을 이용해 조사결과 테이블을 만드는 법에 대해 알아보았습니다. 그런데 결과에서 전체 연령별 응답값이 전체 데이터에서 차지하는 비중이 아니라 연령 내에서 차지하는 비중을 제시하지 못하는 아쉬움이 있습니다. 또한 테이블을 만드는 절차를 반복하지 않고 좀 더 간편한 방법이 없는지도 궁금합니다.

 

3. 테이블! R로 만들기

 

 

이번 포스팅에서는 관심 있는 부차집단의 응답값이 부차집단 내에서 차지하는 비중을 기준으로 테이블을 구성하는 방법을 알아 보고 R에서 function 함수를 이용해 테이블 생성작업을 좀 더 간편하게 실행하는 방법에 대해 알아 보겠습니다.  

 

지난 포스팅에서 사용했던 고객 만족도 조사 결과 데이터를 이용해 R에서 테이블을 만들어 보겠습니다. q1_1은 직원의 친절성, q1_2은 직원의 전문성, q1_3은 매장의 청결성, q1_4는 제품의 다양성, q1_5는 제품의 품질을 묻는 질문의 답변이고 q2는 전반적인 만족도의 응답 결과입니다. Head(raw_data,3) raw_data 파일의 세번째 행까지 읽어드리는 명령입니다.

 

> raw_data=read.csv("raw_data.csv")

> head(raw_data,3)

id sq1 sq2 q1_1 q1_2 q1_3 q1_4 q1_5 q2 x

1 1 남성 30 5 4 3 5 5 5 전체

2 2 여성 40 6 4 5 3 5 3 전체

3 3 남성 30 6 6 7 7 6 6 전체

 

우선 성별 변수 sq1와 연령별 변수 sq2의 교차통계표를 구성해 보겠습니다. table() 함수를 이용하면 성별·연령별 빈도를 구할 수 있습니다. 빈도가 아니라 비율을 알고 싶다면 prop.table() 함수를 활용하면 됩니다. addmargins()를 활용하면 교차통계표에 주변합을 추가할 수 있습니다.

 

>fre=table(raw_data$sq1,raw_data$sq2)

>fre=prop.table(fre)

>fre=addmargins(fre)

30 40 Sum

남성 0.32 0.27 0.59

여성 0.20 0.21 0.41

Sum 0.52 0.48 1.00

 

이제 직원의 친절성을 평가한 변수 q1_1의 빈도와 평균을 전체 응답자, 성별, 연령별로 볼 수 있는 교차통계표를 만들어 보겠습니다. 전체 빈도를 보여주기 위해 전체를 표기한 x변수에 대해 table( )함수를 실행합니다.

 

> raw_data=read.csv("raw_data.csv")

> table1=table(raw_data$q1_1,raw_data$x)

> table1=prop.table(table1)

> table1

전체

3 0.05

4 0.18

5 0.36

6 0.29

7 0.12

 

다음으로 tapply() 함수를 이용해 전체에 대해 q1_1 변수의 평균을 구한 후 rbind() 함수를 이용해 행 방향으로 q1_1 변수의 빈도표에 합쳐 줍니다.

 

> mean<-tapply(raw_data$q1_1,raw_data$x,mean)

> table1=rbind(table1,mean)

> table1

total

3 0.05

4 0.18

5 0.36

6 0.29

7 0.12

mean 5.25

 

다음으로 성별을 구분하는 변수 sq1를 기준으로 빈도와 평균을 구한 다음 전체에 대한 기존 표에 합쳐 줍니다. prop.table(table2,2)에서 파일명 table2 다음의 2는 비율을 열방향으로 합산하기 위한 옵션입니다. 행방향으로 비율을 합치기 위해서는 1을 입력하면 됩니다. rbind()는 행 방향으로 파일을 합쳐주는 함수이고 cblind()는 열 방향으로 파일을 합쳐주는 함수입니다.

 

>table2<-table(raw_data$q1_1,raw_data$sq1)

>table2<-prop.table(table2,2)

>mean2<-tapply(raw_data$q1_1,raw_data$sq1,mean)

>table2<-rbind(table2,mean2)

>table<-cbind(table1,table2)

 

마지막으로 연령별 교차통계표를 구해 원래의 교차통계표에 합쳐 줍니다.

 

>table3<-table(raw_data$q1_1,raw_data$sq2)

>table3<-prop.table(table3,2)

>mean3<-tapply(raw_data$q1_1,raw_data$sq2,mean)

>table3<-rbind(table3,mean3)

>table<-cbind(table,table3)

 

전체 빈도와 평균에 성별 연령별 자료를 합한 교차통계표의 최종 결과물은 아래와 같습니다. print()함수를 이용해 교차통계표 숫자의 자리수를 조정해 줄 수도 있습니다.

 

> table

전체 남성 여성 30 40

3 0.05 0.05084746 0.04878049 0.07692308 0.02083333

4 0.18 0.11864407 0.26829268 0.19230769 0.16666667

5 0.36 0.37288136 0.34146341 0.32692308 0.39583333

6 0.29 0.32203390 0.24390244 0.32692308 0.25000000

7 0.12 0.13559322 0.09756098 0.07692308 0.16666667

mean 5.25 5.37288136 5.07317073 5.13461538 5.37500000

 

> print(table,digits=2)

전체 남성 여성 30 40

3 0.05 0.051 0.049 0.077 0.021

4 0.18 0.119 0.268 0.192 0.167

5 0.36 0.373 0.341 0.327 0.396

6 0.29 0.322 0.244 0.327 0.250

7 0.12 0.136 0.098 0.077 0.167

mean 5.25 5.373 5.073 5.135 5.375

 

설문지가 길어지면 교차통계표를 구하기 위해 위와 같은 절차를 각각의 문항에 대해 반복하는 것은 매우 비효율적입니다. function함수를 이용해 미리 위의 절차를 만들어 주면 설문지가 길어지더라도 비교적 효율적으로 교차통계표를 구할 수 있습니다.

 

>function1=function(a,b,c,d){

+table1<-table(a,b)

+table1<-prop.table(table1,2)

+mean<-tapply(a,b,mean)

+table1<-rbind(table1,mean)

+table2<-table(a,c)

+table2<-prop.table(table2,2)

+mean2<-tapply(a,c,mean)

+table2<-rbind(table2,mean2)

+table<-cbind(table1,table2)

+table3<-table(a,d)

+table3<-prop.table(table3,2)

+mean3<-tapply(a,d,mean)

+table3<-rbind(table3,mean3)

+table<-cbind(table,table3)}

 

function함수에서 a, b, c, d는 임의로 지정한 변수이고 a, b, c, d 대신 실제 분석 대상이 되는 변수들로 교체만 해주면 손쉽게 교차통계표를 구할 수 있습니다.

 

>output1=function1(a=raw_data$q1_1,b=raw_data$x,c=raw_data$sq1,d=raw_data$sq2)

> print(output1,digits=2)

전체 남성 여성 30 40

3 0.05 0.051 0.049 0.077 0.021

4 0.18 0.119 0.268 0.192 0.167

5 0.36 0.373 0.341 0.327 0.396

6 0.29 0.322 0.244 0.327 0.250

7 0.12 0.136 0.098 0.077 0.167

mean 5.25 5.373 5.073 5.135 5.375

 

 

궁금한 점이 있으면 아래 버튼을 클릭해 주십시오. 성실하게 답변 드리겠습니다.

 

 

 

 

 

'R기어가기' 카테고리의 다른 글

7. R로 차트 만들기 ②  (0) 2017.09.27
6. R로 차트 만들기 ①  (2) 2017.08.05
4. R을 이용한 IPA 산점도 작성  (0) 2017.01.13
3. 테이블! R로 만들기  (0) 2017.01.07
2.R을 이용한 word cloud 만들기  (1) 2016.08.12
Posted by dooka
,

14. 서베이몽키 웹 링크①

15. 서베이몽키 웹 링크②

        18. 서베이몽키 이메일 초대장

 

서베이몽키의 주된 설문 응답 수집 수단인 웹 링크와 이메일 초대장 외에도 서베이몽키는 ‘소셜 미디어 게시’, ‘웹사이트 삽입’, ‘모바일 앱 삽입’, ‘데이터 직접 추가’의 다양한 응답 수집 수단을 제공하고 있습니다.

서베이몽키에서는 트위터, 링크드인, 페이스북과 같은 소셜 미디어를 통해 설문조사를 손쉽게 실시해 볼 수 있습니다.

또한, 웹사이트의 특정 페이지에 설문을 삽입하거나 팝업창 형태로 노출할 수 있습니다. 웹 사이트 페이지나 팝업창에 삽입할 서베이몽키 설문의 크기와 색상을 ‘테마’에서 결정한 후 마감 날짜 및 시간과 최대 응답 수 등의 옵션을 지정하고 설치 코드를 복사하는 후 원하는 사이트의 소스 코드에 붙여넣기 하면 됩니다.

 

 

서베이몽키의 모바일 SDK(Software Development Kit)를 사용하면 iOS나 Android 앱에서 설문조사 응답을 수집하여 서베이몽키 를 사용하여 응답을 분석할 수 있습니다.

종이 설문지를 이용해 진행한 설문조사의 응답 결과를 입력하거나, 인터넷에 연결할 수 없는 사람을 대신해 응답을 추가할 수 있습니다. 데이터 직접 추가는 기본적으로 웹 링크에서 복수응답을 허용하는 것과 유사합니다. 종이 설문지의 결과를 데이터 형태로 구성하여 일괄 업로드하는 것이 아니라 설문 결과 하나하나를 별도로 입력하는 것이므로 표본크기가 너무 많다면 데이터 직접 추가를 활용하는 것이 비효율적일 수 있으며, 어디까지나 보조적인 수단으로만 고려하는 것이 좋습니다.

 

궁금하신 점이 있으면 아래 버튼을 클릭해 주세요. 성실하게 답변드리겠습니다!

 

 

 

 

 

Posted by dooka
,

 

SurveyMonkey는 ‘설문 응답 수집’ 수단(컬렉터)으로 메일로 보내기, 웹 링크 받기, 소셜 미디어에 게시하기, 웹 사이트에 삽입하기, 모바일 앱에 삽입하기, 데이터 직접 추가하기의 총 여섯 가지 컬렉터를 제공하고 있습니다. 이 중 가장 기본이 되는 웹 링크에 대해서는 지난 포스팅에서 자세하게 알아 보았습니다.

 

14. 서베이몽키 웹 링크①

15. 서베이몽키 웹 링크②

 

① SurveyMonkey 이메일 초대장을 이용한 이메일 조사는 메일 수신자를 입력하는 것으로 시작합니다. ② CSV파일을 업로드하거나 Gmail, 이미 SurveyMonkey에 업로드한 연락처 등과 연동하여 대량으로 수신자를 추가할 수도 있습니다. 이미 관리하고 있는 엑셀 양식의 고객 명단이 있다면 저장 양식을 CSV로 지정하여 저장한 후 업로드하여 활용하면 됩니다.

 

 

③ 메일 수신 대상자를 입력한 후에는 설문조사 안내를 위한 메시지를 입력합니다. ④ 사용자 html 모드에서는 html 스크립트를 이용해서 좀 더 다양하고 자유롭게 설문조사 안내 메시지를 작성할 수 있습니다.

 

 

⑤ SurveyMonkey 이메일 초대장은 바로 발송할 수도 있고 예약 발송할 수도 있습니다. SurveyMonkey는 이메일 초대장 발송 전 스팸 여부를 검토한 후 발송을 승인하고 있습니다. ⑥ 이메일 조사의 진행 상황을 확인 후 더 많은 수신자를 추가하거나 설문 참여를 독려하는 알림을 반복적으로 보낼 수도 있습니다.

 

 

궁금하신 점이 있으면 아래 버튼을 클릭해 주세요. 성실하게 답변드리겠습니다!

 

 

 

 

 

 

 

 

 

Posted by dooka
,

서베이몽키 PLATINUM 계정에서는 설문을 몇 개의 블록으로 묶어서 로직을 적용할 수 있는 ‘블록 무작위화’ 기능을 제공하고 있습니다.. ‘블록 무작위화’ 기능은 광고시안 평가와 같이 서로 다른 자극물에 대해 동일한 내용의 설문을 진행해야 하는 경우에 자극물별로 동일한 내요의 설문을 블록화해서 무작위화함으로써 순서에 따는 비확률오차를 평균적으로 제어할 수 있습니다.

‘블록 무작위화’ 기능을 활성화하기 위해서는 우선 ① 서베이몽키 ‘설문 디자인’ 페이지 좌측 리모콘 모양 메뉴에서 ‘로직’ 을 선택한 후 ‘블록 무작위화’를 선택합니다. ② 블록화할 설문을 선택해서 블록으로 만들어 줍니다. ③ 블록에 로직을 설정해 줍니다. 이렇게 하면 블록으로 설정한 부분을 블록 단위로 무작위 노출할 수 있습니다. 총 9페이지 분량의 설문이 있다고 할 때, 아래와 같이 블록을 지정해 무작위화하면 페이지 1 노출 후 블록 단위로 노출 순서가 무작위화되어 순서 효과가 미치는 영향이 특정 자극물에 집중될 가능성을 배제할 수 있게 됩니다.

블록 무작위화 예시 설문은 아래 링크를 참고하십시오.

(블록 무작위화 예시 링크 : goo.gl/wE23rg )

 

궁금하신 점이 있으면 아래 버튼을 클릭해 주세요. 성실하게 답변드리겠습니다!  

Posted by dooka
,

주어진 신뢰수준 하에서 표본크기가 주어지면 오차한계를 계산할 수 있으며 최대허용오차를 결정하고 나면 필요한 표본크기를 알 수 있습니다. 이제 오차한계를 이용해 표본크기를 구해 보겠습니다. 구체적인 표본크기 결정 과정은 아래와 같습니다.

 

 

비복원추출일 경우 허용오차한계를 알기 위해서는 모집단의 크기를 알아야 합니다. 그러나, 모집단의 크기가 표본에 비해 매우 큰 경우에는 복원추출과 비복원추출의 차이가 거의 없게 되기 때문에 모집단의 크기를 아는 것의 의미는 크게 줄어들게 됩니다.

목표 표본크기는 오차한계와 신뢰수준을 결정함으로써 결정합니다. 오차한계는 표본통계량(표본평균)과 모집단 특성치(모평균)의 최대허용오차를 의미하며 표본추출을 반복함에 따라 표본통계량이 관심 있는 모집단의 특성치를 얼마나 오차없이 반영하는지를 나타내는 개념입니다. 신뢰수준은 표본추출을 반복할 경우 그 결과를 평균적으로 얼마나 신뢰할 수 있는지 나타냅니다. 오차한계가 작을수록 모집단 특성치에 대한 유용한 정보를 제공하지만 오차한계가 작아지면 모집단에 대한 추론이 틀릴 가능성도 높아지게 됩니다. 그러므로 표본조사의 결과에 대해 평균적으로 어느 정도의 신뢰수준을 확보할 지 결정한 후에 허용 오차한계를 충족하는 최소한의 표본크기를 찾는 방식으로 표본크기를 결정합니다. 오차한계는 비율개념으로 볼 때 10%를 넘지 않는 것이 좋으며, 표본조사의 결과 해석이 의사결정의 품질을 하락시키지 않기 위해서는 신뢰수준을 90% 이하로 낮추는 것은 바람직하지 않습니다. 일반적으로 신뢰수준은 95%가 통용되고 있습니다.

신뢰수준 95%를 가정했을 때 허용가능한 표본오차의 한계를 표본평균-모평균=d라고 하면 오차한계=표본평균-모평균이 d보다 같거나 작을 확률은 다음과 같습니다.

   

표본크기 n인 표본이 평균이 μ이고 분산이 σ2인 모집단으로부터 얻어진 확률표본이고 표본크기가 충분히 크다면 중심극한정리를 적용할 수 있고 근사적으로 표본평균 는 평균이 이고 표본평균의 분산이 σ2/n인 정규분포를 따르게 됩니다. 그러므로, 정규분포의 성질에 따라 아래 Z는 근사적으로  평균이 0이고 분산이 1인 표준정규분포를 따릅니다.   

그러므로, 다음이 성립하고 표준정규분포에서 면적이 0.95 즉 신뢰수준이 0.95인 표준정규분포변수의 값을 계산하여 비교하면 허용오차한계에 대응하는 최소 표본크기를 계산할 수 있습니다.

오차한계는 주어진 신뢰수준 하에서 좌우대칭이 되도록 설정합니다. 왜냐하면 면적으로 확률을 계산하므로 비대칭으로 오차한계를 설정하게 되면 동일한 확률에 대해 상대적으로 큰 오차를 허용할 수 밖에 없기 때문입니다. 좌우대칭 형태로 오차한계를 설정하기 때문에 신뢰수준 95%에 해당하는 표준정규분포 변수 값을 구하기 위해서는 P(Z≦Z0.025)-P(Z≦-Z0.025)=97.5%-2.5% =95%를 만족하는 Z0.025값을 찾으면 됩니다. Z0.025는 표준정규분포에서 Z0.025보다 같거나 작을 확률이 100%-2.5%=97.5%을 만족하는 표준정규분포 변수의 값을 의미합니다. 이 변수값의 표기를 Z0.975로 하지 않고 Z0.025로 표기하는 이유는 일반적인 표기이기도 하거니와, 나중에 가설검정을 위해서도 편리하기 때문입니다.

 

 

이제 오픈소스 통계프로그램인 R에서 Z0.025와 -Z0.025의 값을 구해 보겠습니다. R에서 표준정규분포 확률에 해당하는 변수의 값을 계산하는 명령어는 ‘qnorm(확률)’입니다. 입력해야 할 확률은 각각 97.5%와 2.5%이므로 R에서 qnorm 명령어를 실행하면 Z0.025=1.96이 됩니다. 정규분포는 좌우대칭을 이루고 있으므로 Z1-0.025=-Z0.025=-1.96이 됨을 확인할 수 있습니다.

> qnorm(0.975)

[1] 1.959964

> qnorm(0.025)

[1] -1.959964

 

신뢰수준 95% 하에서 최대 허용오차에 대응하는 최소 필요 표본크기를 알기 위해  을 표본크기 n에 대해 정리해보면 표본크기 n은 최소한 보다는 크거나 같아야 함을 알 수 있습니다. 아래 표본크기의 산출공식

은 모집단의 크기가 표본크기에 비해 매우 커서 복원추출과 거의 차이가 없는 경우 적용할 수 있는 공식입니다.

 

 

 

 

예를 들어 편의점을 통해 새로운 간편식품 판매를 고려하고 있는 기업이 경쟁 제품 구매자를 대상으로 신제품 구매의향 가격을 조사한다고 생각해보겠습니다. 선행조사를 통해 표준편차 σ는 560으로 알려져 있고 구매의향 가격의 허용오차를 100원 이내로 제어하고 싶다면 필요한 최소한 표본크기가 121명 이상인 표본을 추출해야 합니다.

 

우리가 흔히 접하는 비율 역시 수리적으로는 평균이므로 중심극한정리를 적용해 필요한 표본크기를 알아 볼 수 있습니다. 어떤 도시에서 특정 후보에 대한 지지율이 60%가 되는지 알아보기 위해 표본조사를 실시할 경우 신뢰수준 95% 하에서 지지율의 허용 오차한계를 5% 이내로 제어하고 싶다면 어느 정도의 표본이 필요한지 알아보겠습니다.

우선 지지율 은 평균이 0.6 이고 분산이 0.6(1-0.6)/n인 분포를 따르고 확률표본의 조건을 충족할 경우 중심극한정리에 의해 근사적으로 정규분포를 따르게 됩니다.

 

표본크기를 기준으로 최대허용오차를 정리하면 최소 369명의 표본이 필요함을 알 수 있습니다.

이렇게 목표 표본크기를 구했다면 응답률을 고려해 표본추출 작업을 수행해야 합니다. 예를 들어 그간의 경험을 통해 응답률이 25% 내외라는 것을 알고 있고 최종 목표 표본크기가 100명이라면 표본추출 시 100/25%=400명 내외의 표본을 추출해야 합니다.

지금까지 살펴본 표본크기 결정방법은 기본적으로 하나의 질문, 하나의 변수를 기준으로 한 방법입니다. 그러므로 실제 설문조사에서는 꼭 필요하거나 응답 대상자 분류의 기준이 되는 변수를 기준으로 표본크기를 정하게 됩니다. 만약 시장점유율 10%인 양문형 냉장고 브랜드 A를 포함한 양문형 냉장고 카테고리 소비자 대상 설문조사를 기획할 경우 표본크기가 100명이라면 A 브랜드 구매자는 10명에 불과합니다. 또한 연령별 행태의 차이를 보기 위해 연령별로 자료를 구분해 보면 연령별 사례수는 더욱 감소합니다.

그래서 목표시장인 25세~35세 여성의 A 브랜드 구매 행태를 정밀하게 보기 위해 25~29세 50명, 30~35세 50명, 총 100명의 A 브랜드 구매자를 표본에 포함시키기로 했다면 전체 목표 표본크기는 1,000명이 되고 응답률이 25%라면 총 4,000명을 표본추출해야 합니다. 만약 4,000명의 표본크기가 필요한 정보와 확보 예산에 비해 너무 크다고 판단한다면 전체 양문형 냉장고 시장에 대해서는 400명 내외의 표본으로 전체 시장을 살펴보고 400명 중에 포함된 A 브랜드 구매자 40명 외에 A 브랜드 구매자 60명만을 추가로 조사해 A 브랜드에 대해서는 40명+60명=100명을 대상으로 A 브랜드의 세부사항에 대해 알아 볼 수도 있습니다. 이렇게 특정 집단에 속하는 응답자를 추가로 조사할 경우, 추가 조사를 본 조사와 분리하여 진행해야 합니다. 예를 들어 오프라인에서 일대일조사를 통해 본 조사에 더하여 추가 조사를 실시할 경우 담당 조사원이나 조사 시기를 분리하지 않으면 중요한 지표가 과대 추정되거나 과소 추정될 수 있습니다.

궁금하신 점이 있으면 아래 버튼을 클릭해 주세요. 성실하게 답변드리겠습니다!  

                                                     

 

 

 

 

 

 

 

 

'야행하는 리서치' 카테고리의 다른 글

33. 설문지의 순서배열  (2) 2017.07.20
32. 설문지 작성 방법  (0) 2017.07.17
30. 표본오차의 이해  (0) 2017.05.08
29. 표본분포와 중심극한정리  (0) 2017.05.03
28. 표본조사와 표본통계량  (0) 2017.05.03
Posted by dooka
,

한번의 표본추출을 통해 얻어지는 표본통계량의 값과 관심있는 모집단의 특성치와의 차이를 표본오차(sampling error)라고 합니다. 표본오차는 표본통계량의 값-모집단의 특성치로 정의할 수 있으며 표본통계량이 표본평균인 경우 표본오차는 표본평균의 값-모평균으로 정의할 수 있습니다. 모집단의 일부를 표본으로 추출해 구한 표본평균은 모l평균과 일치하지 않는 것이 일반적입니다. 이처럼 표본을 통해 모집단을 추론하는 과정에서 발생하는 필연적인 오차가 표본오차입니다.

 

표본오차를 표본평균과 모평균의 차이라고 한다면, 우리는 모평균을 모르고 있으므로 한 번의 표본추출에서의 표본오차가 구체적으로 어느 정도인지 알 수 없습니다. 그러나, 일정 표본크기 이상의 독립적이고 동일한 분포를 따르는 확률표본을 반복적으로 추출한다고 하면 중심극한정리에 의해 표본평균은 모평균을 중심으로 정규분포를 따르게 됨을 알고 있습니다.

 

그러므로 설문조사의 기획자는 개별 표본의 표본오차는 알 수 없지만 표본크기와 신뢰수준이 주어진 경우 반복적으로 표본추출을 했을 때 표본통계량과 최대 변동 즉 오차한계(정도, precision)는 관리할 수 있게 됩니다. 신뢰수준이란 표본추출을 반복할 경우 그 결과를 평균적으로 얼마나 신뢰할 수 있는지를 나타내는 개념입니다. 예를 들어 신뢰수준이 95%라고 하면 표본추출을 반복할 경우 적어도 그 중 95%의 표본은 관심 있는 모집단 특성치에 대한 정보를 포함할 것이라고 생각할 수 있습니다.

 

표본크기가 정해져 있는 경우에는 오차한계를 줄이면서 동시에 신뢰수준을 높일 수는 없습니다. 왜냐하면 신뢰수준을 높이기 위해서는 허용가능한 표본평균의 변동폭을 가급적 넓게 허용해서 표본평균의 가능한 변동 범위 내에 모평균을 포함할 가능성을 높여야 하는데 이는 결국 더 큰 오차한계를 허용해야 한다는 의미이기 때문입니다.

           

                          

            

궁금하신 점이 있으면 아래 버튼을 클릭해 주세요. 성실하게 답변드리겠습니다!  

                                            

 

 

Posted by dooka
,

실제 설문조사에서 매번 일일이 가능한 표본의 경우의 수를 모두 계산해서 표본평균의 표본분포를 구성하고 이를 근거로 모집단의 특성을 추론한다면 매우 번거로운 일이 아닐 수 없습니다. 그런데, 일정한 조건을 충족하면 확률분포를 직접 다루지 않고도 모집단의 특성을 추론할 수 있는 방법이 있습니다.

동전의 앞면과 뒷면이 나올 확률이 각각 정확하게 0.5라고 가정해 보겠습니다. 동전을 던져서 앞면이 나오는 평균 횟수 즉 앞면이 나올 확률의 분포를 알아보는 실험을 해보겠습니다. 먼저 동전을 10번 던지는 실험을 실행하고, 다음으로 동전을 30번 던지는 실험을 실행해서 앞면이 나오는 횟수의 평균이 어떤 확률분포를 가지는지 관찰해 보았습니다. 표본크기가 10인 표본을 반복해서 추출하는 경우와 표본크기가 30인 표본을 반복해서 추출하는 경우의 표본평균을 비교한다고 생각해도 무방합니다.

 

동전을 던진 횟수가 10회, 표본크기가 10인 경우에 비해 동전을 던진 횟수가 30회, 표본크기가 30인 경우의 확률분포 형태가 달라졌음을 알 수 있습니다. 표본크기가 30인 경우에 자료가 모집단의 확률인 0.5를 중심으로 모이면서 좌우대칭인 모습을 보이고 있습니다.

이처럼 표본크기를 늘려가면서 표본추출을 반복하면 표본평균의 확률분포 즉 표본분포(sampling distribution)가 특정한 확률분포에 근사하게 되는데 이를 중심극한정리(central limit theorem)라고 합니다. 중심극한정리의 적용 조건이 되는 독립적이고 동일한 분포를 따르는 표본을 특히 확률표본이라고 합니다.

중심극한정리에 의하면 미지의 확률분포를 따르는, 평균이 μ이고 분산이 σ2인 모집단으로부터 확률적으로 독립인 표본을 추출했을 때, 표본크기 n이 증가할수록 표본평균은 평균이 μ이고 분산이 σ2/n인 정규분포에 근사하게 됩니다.

모분산은 자료의 제곱합을 개체수로 나누는 반면, 표본분산은 표본 자료의 제곱합을 (표본크기-1)로 나누어 구합니다. 표본분산을 표본크기가 아닌 (표본크기-1)로 나누어 구하는 이유는 (표본크기-1)로 나눈 표본분산의 기대값이 모분산과 일치하기 때문입니다. 분산을 제곱근한 값을 표준편차라고 하며 표준편차를 표본크기의 제곱근으로 나눈 값, 즉 표본평균의 분산을 제곱근한 값을 표준오차라고 합니다.

중심극한정리를 적용하기 위해서는 평균과 분산을 계산할 수 있어야 하므로 사칙연산을 적용할 수 없는 명목척도와 서열척도의 확률변수에는 중심극한정리를 직접 적용할 수는 없습니다.

하나의 확률변수가 표본에 포함될 지 여부에 관계없이 다른 확률변수가 포함될 확률이 변동하지 않는 경우 확률적으로 독립이라고 합니다. 그런데 확률적 독립이라는 개념은 직관적으로 이해하는 것보다 좀 더 엄격한 의미를 담고 있습니다. 확률적으로 독립이라고 하면 모든 가능한 경우에 표본으로 포함될 확률이 서로 무관해야 함을 뜻합니다. 표본크기 n인 표본을 구성하는 확률변수 X1, X2, ...., Xn이 확률적으로 독립이 되기 위해서는 X1과 X2, X1과 X2와X3 ,이런 식으로 X1, X2, ...., Xn까지 모든 가능한 조합이 확률적으로 독립이여야 합니다.

중심극한정리를 적용하기 위한 확률적 독립의 가정은 엄밀하게 보면 설문조사에서 관철되지 않습니다. 왜냐하면 설문조사에서 한번 조사대상이 된 응답자는 표본추출에서 제외하는 비복원추출이 일반적이기 때문입니다. 만약 3명으로 이루어진 모집단이 있고 표본으로 선택될 확률이 1/3이라고 할 때, 비복원추출을 적용하면 1/3의 확률로 최초 선택한 개체가 정해진 후 다음 개체가 추출될 확률은 1/2로 변경되므로 더 이상 확률적으로 독립이 아닙니다. 그럼에도 설문조사에서 중심극한정리를 적용할 수 있는 이유는 모집단에 비해 표본크기가 매우 작아 비복원추출을 하더라도 실제로는 표본으로 선택될 확률의 차이가 거의 없다고 볼 수 있는 경우가 많기 때문입니다. 2017년 1사분기 현재 서울시의 주민등록인구는 9,926,928명입니다. 이들 서울시의 주민등록인구를 대상으로 400명의 표본을 추출한다고 하면 서울시 주민등록인구 중 최초로 표본으로 선택될 확률은 1/9,926,928이고, 마지막 400번째 표본으로 선택될 확률은 1/(9,926,928-399)가 되므로 거의 동일한 확률로 보아도 무방할 것입니다.

중심극한정리의 유용성은 모집단의 확률분포와는 무관하게 표본평균의 확률분포-표본분포가 정규분포에 근사하기 때문에 보편적으로 모집단의 관심 있는 특성을 추론할 수 있다는 점에 있습니다. 정규분포의 형태는 아래와 같이 좌우대칭의 종모양을 이루고 있습니다.

아래 정규분포의 확률분포에서 함수 f(X)를 확률밀도함수라고 하는데, 정확하게 확률과 일치하는 개념은 아닙니다. 확률밀도함수의 값이 확률이 되는 것이 아니라 확률밀도함수의 면적이 확률입니다. 설문조사에서 특정한 값이 나올 가능성은 매우 낮다는 점을 생각해보면 확률을 특정한 값이 아닌 구간에 대응시키는 것이 보다 설득력이 있습니다.

 

                                        

                        

만약 표본평균이 중심극한정리에 의해 정규분포를 따른다면 표본평균이 모평균으로부터 1×표본평균의 분산만큼의 거리 이내에 속할 확률은 0.683이 되고, 2×표본평균의 분산만큼의 거리 이내에 속할 확률은 0.954, 3×표본평균의 분산만큼의 거리 이내에 속할 확률은 0.997이 됩니다.

                                         

서로 다른 표본통계량이 서로 확률적으로 독립적이고 각각 근사적으로 정규분포를 따른다면 이들 표본통계량의 합 또는 차의 분포 역시 근사적으로 정규분포를 따르는 것으로 알려져 있습니다.이러한 정규분포의 성질은 두 모집단을 비교할 때 매우 유용합니다.

만약 표본평균이 독립적이고 동일한 분포를 따르는 표본으로부터 얻은 표본통계량이라면 표본평균을 모집단평균으로 차감하고 표본평균의 분산을 제곱근한 표준오차로 나누어주면 이 확률변수는 평균이 0이고 분산이 1인 정규분포를 근사적으로 따르게 됩니다. 특별히 평균이 0이고 분산이 1인 정규분포를 표준정규분포라고 하며, 서로 다른 평균과 분산으로 정의하는 다양한 정규분포를 따르는 확률변수들이라고 하더라도 해당 확률변수를 평균으로 차감하고 분산을 제곱근한 표준편차로 나눠 줄 경우 표준정규분포를 따르게 되므로 정규분포를 따르는 다양한 확률변수를 일의적으로 분석할 수 있는 길이 열리게 됩니다.

 

궁금하신 점이 있으면 아래 버튼을 클릭해 주세요. 성실하게 답변드리겠습니다!

                                     

 

Posted by dooka
,

통계량과 통계량의 분포에 대한 이해는 표본오차와 표본크기의 결정뿐만 아니라 나중에 통계적 의사결정을 이해하기 위해서도 매우 중요합니다.

표본으로부터 얻어진 값이 반드시 모집단의 관심 있는 모수와 일치한다는 보장은 없으며 오히려 일치하지 않는 것이 일반적입니다. 표본조사로부터 얻어질 수 있는 모든 가능한 결과들의 집합을 표본공간이라고 하고, 확률변수는 표본공간을 정의역으로 하고 실수공간을 치역으로 하는 함수로 정의합니다. 표본통계량은 미지의 모수를 포함하지 않는 확률변수의 함수입니다. 표본통계량은 확률변수의 함수이므로 표본통계량 역시 확률변수입니다. 확률변수와 표본통계량의 개념을 이해하기 위해 아주 총3명으로 이루어진 모집단을 예로 들어 보겠습니다.

총 3명의 소비자로 이루어진 시장을 있으며 이들은 특정 제품에 대해 서로 다른 호감도를 가지고 있습니다. 이들 중 2명을 표본추출하여 전체 시장의 호감도를 알아보는 설문조사에서 확률표본추출을 적용한다면 가능한 표본은 다음과 같습니다. 괄호안의 수치는 호감도를 나타냅니다.

                           

사례에서 제품에 대한 호감도가 확률변수입니다. 모집단의 호감도는 정해진 숫자이지만 표본의 호감도는 어떤 표본이 추출되는가에 따라 달라지는 변수입니다. 표본에서 얻은 호감도의 평균 즉 표본평균이 표본통계량입니다. 설문조사에서 개별 응답자들이 특정 질문에 응답한 값들이 표본조사로부터 얻어질 수 있는 모든 가능한 결과들의 집합-표본공간에 대응되는 확률변수의 구체적인 실현값들이 됩니다.

여기에서 유념할 점은 개별 소비자가 표본에 포함될 확률이 다른 소비자가 표본에 포함될 확률에 영향을 미치지 않고 있으며 각각의 표본이 선택될 확률 역시 다른 표본이 선택될 확률과 무관하다는 것입니다.

가능한 확률변수의 값들에 대하여 각각의 값들에 대한 확률에 대응시킨 것을 확률분포라고 합니다. 확률변수 전체를 다루는 것은 비효율적이므로 우리는 확률변수에 포함된 정보를 요약한 표본통계량의 확률분포에 관심을 가지게 됩니다. 통계량의 대표적인 예는 바로 표본평균입니다. 표본평균과 같은 통계량의 확률분포를 표본분포(sampling distribution)라고 하며, 표본의 분포와는 구별합니다. 동일한 표본통계량이라고 하더라도 추출 표본에 따라 구체적인 표본통계량의 값은 달라질 수 밖에 없으며, 구체적인 표본통계량의 값이 모집단의 관심있는 특성을 얼마나 잘 반영하는지는 알 수 없습니다. 그러므로 표본분포 즉 통계량의 분포를 살펴봄으로써 관심 있는 모집단의 특성을 추론하여야 합니다.

사례에서의 표본평균에 각각의 확률을 대응시킨 확률분포는 아래와 같습니다. 개별 표본평균의 값은 모집단 평균과 일치하지 않지만 가능한 표본평균들의 평균은 모집단 평균이 됨을 알 수 있습니다.

 

궁금하신 점이 있으면 아래 버튼을 클릭해 주세요. 성실하게 답변드리겠습니다!

                                                      

 

 

 

 

Posted by dooka
,

23. 단순임의추출

25. 층화임의추출

단순임의추출에서 특정표본이 추출될 확률이 동일하므로 실제 표본은 극단적인 응답자들이 추출될 가능성도 있습니다. 표본추출을 반복하면 표본은 평균적으로 모집단을 대표하겠지만 개별 표본은 그렇지 않을 수 있습니다. 층화임의추출을 적용하게 되면 이런 한계를 극복할 수 있습니다.

층화임의추출법(stratified random sampling)은 모집단을 몇 개의 이질적인 층(stratum)으로 구분하여 각 층별로 임의추출법을 적용하는 방법입니다. 층화임의추출법은 비확률표본추출방법 중 하나인 할당표본추출(quota smapling)과 구분해야 합니다. 할당표본추출은 편향된 표본을 추출하지 않도록 모집단의 특성에 비례하여 표본을 추출하는 방법입니다.

층화임의추출법에서는 단순임의추출법에서의 모분산을 층내 분산과 층간 분산으로 분해해 볼 수 있습니다. 동일 층의 이질성은 낮추고 서로 다른 층간의 이질성은 높아지도록 표본추출하는 층화임의추출법을 적용하게 되면 층내 분산이 감소하게 되어 전체 분산이 줄어드는 효과가 있습니다. 최대허용오차-오차한계는 분산의 제곱근인 표준편차에 비례하고 표본크기의 제곱근에 반비례하는데 서로 다른 층의 이질성이 커지도록 층화임의추출법을 적용하게 되면 단순임의추출법에 비해 보다 정확한 표본추출이 가능해집니다.

아래 그림과 같이 총 10명으로 이루어진 가상의 시장을 생각해보도록 하겠습니다. 이들 소비자는 모양에서 원형, 사각형, 오각형의 특성을 가지고 있고 색상 측면에서는 흰색, 회색, 검은색의 특성을 가지고 있고 이는 관찰할 수 있는 특성입니다. 각각의 소비자의 연번을 부여해 두었고 괄호 안의 수치는 우리가 개발할 신제품에 대한 호감도를 나타냅니다. 이들 호감도는 우리가 조사를 해보시지 않으면 직접 관찰할 수는 없습니다. 그간의 경험으로 비춰 표본조사를 통해 얻은 신제품 컨셉트에 대한 호감도가 10점 만점에 7점 이상이면 제품 출시 시 제품을 구매하는 것으로 알려져 있다고 가정해 보겠습니다.

              

                                         

                         

이제 10명의 모집단으로부터 3명의 표본을 추출해서 평균 호감도를 알아보겠습니다. 각각의 개체에 연번(id)을 부여한 후 단순임의추출법을 적용해 난수를 발생한 후 개체를 정렬해임의의 개체 3명을 선택해 보았습니다. 만약 아이디 2번, 5번, 10번이 선택되었다면 표본의 평균 호감도는 (6+10+10)/3, 8.7점이 됨을 알 수 있습니다. 호감도 10점 만점인 개체는 전체 모집단에서 30%에 불과하지만, 각각의 개체가 표본으로 선택될 가능성은 동일하므로 우연히 10점 만점의 개체가 과다 추출된 가능성이 있습니다. 예에서 보는 표본의 66%가 호감도 10점으로 나타나 직관적으로 보더라도 모집단과는 상당한 차이가 있음을 알 수 있습니다.

이번에는 층화임의추출법을 적용하여 개체의 도형 측면 특성이 사각형인 경우에 한명을 무작위로 선택하고 오각형인 경우와 원형인 경우에도 각각 한명 씩 무작위로 선택해 보았습니다. 선택된 개체가 아이디 10번, 1번, 3번이라고 하면 표본의 평균 호감도는 (10+4+3)/3, 5.7점이 됩니다. 극단치를 포함한 사각형인 경우가 표본으로 채택될 최대 숫자가 1명으로 제한되어 단순임의추출보다는 모집단을 대표하는 표본을 추출할 가능성이 커지는 것을 알 수 있습니다. 층화임의추출법은 집단 간 이질성이 존재하는 경우 단순임의추출법보다 정확하게 모집단을 대표하는 표본을 추출할 수 있습니다.

사례에서 추가로 제품의 단위당 생산원가가 5원이고 시장가격인 7원에 판매할 수 있다고 가정해 보겠습니다. 단순임의추출법에 의한 조사결과를 근거로 6개의 제품을 생산하면 시장에서는 4개만 판매될 것이므로 판매액은 28원, 총생산원가는 30원이 되어 2원의 손해를 보게 됩니다. 만약, 층화임의추출법에 의한 조사결과를 근거로 3개의 제품을 생산한다면 시장에서 모두 판매할 수 있을 것이므로 매출액은 21원, 총생산원가는 15원이 되어 6원의 이익을 얻을 수 있습니다.

그런데, 층화임의추출에서 집단을 구분하는 변수를 잘못 선정하면 오히려 표본의 대표성을 저해할 수 있습니다. 예에서 소비자 특성 중 도형이 아닌 색상을 기준으로 층화하는 경우를 생각해 보겠습니다. 검은색, 회색, 흰색인 개체들에서 각각 1명 씩 무작위로 추출한 결과 아이디 4번, 5번, 2번이 표본으로 선택되었다면 표본의 평균 선호도는 (10+10+6)/3, 8.7점이 되어 단순임의추출법과 동일한 결과가 나오는 것을 확인할 수 있습니다. 

                                  궁금하신 점이 있으면 아래 버튼을 클릭해 주세요. 성실하게 답변드리겠습니다!

                                    

 

 

 

 

Posted by dooka
,

서베이몽키에서는 플래티넘 계정 사용자에게 고급 분기 로직 기능을 제공하고 있습니다. 아직은 안정적이지 않은 것으로 보이지만 다양한 응용이 가능한 기능입니다. 시간 나는 대로 고급 분기 로직에 대해 알아보고자 합니다.

아래와 같은 질문에서 10대 이하, 20대와 50대 이상인 응답자를 설문에서 제외시켜야 하는 경우를 생각해 보겠습니다. 서베이몽키가 일반적으로 제공하는 로직기능을 활용할수도 있지만 고급 분기 로직을 이용해서 좀 더 손쉽게 작업할 수 있습니다.

 

새 규칙 추가에서 조건을 선택해 줍니다. 조건으로 활용할 설문을 선택한 후 설문의 보기를 이용해 구체적인 조건을 지정합니다.

 

마지막으로 조건에 해당할 경우 실행할 작업을 지정해 줍니다.

위 고급 분기 로직을 적용한 사례 링크는 아래와 같습니다. 적용된 로직이 실현되는 모습을 확인해 보십시오.

https://ko.research.net/r/G86RTP2

 

고급 분기 로직을 적용한 사례를 하나 더 살펴보겠습니다. 지역 축제에 참여한 관광객을 대상으로 지역 축제 만족도조사를 진행한다고 할 때 혼자서 축제를 방문한 응답자에게는 축제 관람을 결정한 사람이 누구인지 묻는 질문을 노출하고 싶지 않다고 가정해 보겠습니다.

먼저 언급한 사례와 동일하게 페이지 로직 메뉴로 들어가 규칙을 추가합니다. 조건은 축제에 혼자서 참석한 경우로 설정하고 실행 작업은 축제 관람 결정자를 묻는 질문을 숨기는 것으로 했습니다.

 

위 고급 분기 로직을 적용한 사례 링크는 아래와 같습니다. 적용된 로직이 실현되는 모습을 확인해 보십시오. 질문 숨기기 기능은 중간에 다른 질문이 있더라도 활성화됨을 알 수 있습니다.

https://ko.research.net/r/GLXK93D

 

궁금하신 점이 있으면 아래 버튼을 클릭해 주세요. 성실하게 답변 드리겠습니다!

.

 

 

Posted by dooka
,