교육통계/Rstudio

교육통계 R랑가몰라 - 1. 기술통계 3) 역문항 포함된 변수 만들기

개노답이글스 2022. 11. 2. 18:59

안녕하세요, 이번에는 저번 장에 이어서 R로 분석에 사용할 변수를 만드는 방법에서 추가로 역문항이 포함된 변수 만드는 방법에 대해 알아보려 합니다.

-----------------------------------------------------------------------------------------------------------------------------

1. 역문항이란

변수를 만들려 하였더니 조사문항 중에 '역문항'으로 조사된 것들이 있을 수 있습니다.

말 그대로 거꾸로 채점을 한 거죠.

가령, 학업열의를 조사하는 질문에 "나는 학업에 의욕이 없다"와 같은 문항을 넣으면

반대로 채점이 됩니다.

따라서 변수를 만들 때는 이러한 문항들을 역산을 해주어야 하는데요.

흔히 역문항을 만들 때 [응답 범주 최댓값+1] -문항 응답 값으로 계산을 합니다.

예를 들면, 5점 척도 문항에 응답자가 2이라 응답을 하였으면

6-2=4으로 계산해야 합니다.

한국아동청소년 패널조사 자료에서는 자아존중감을 측정하는 문항 중에는 역문항이 포함되어 있습니다.

조사문항은 코드북을 통해 확인할 수 있습니다.

그럼 역문항을 어떻게 확인하면 좋을까요?

첫 번째, 조사문항 원제작자의 보고서 또는 논문자료를 참고합니다.

보통 문항 개발을 하면서 어떤 문항에 대해서 역문항으로 측정하였다고 설명이 있습니다.

두 번째, 조사문항의 내용을 직관적으로 해석합니다.

자신의 문해력이 높다면 이 방법을 사용하면 좋겠지만.. 저는 문해력에 자신이 없어.. 이 방법을 사용하긴 조금 어렵습니다.

세 번째, 상관을 확인하는 방법

문항 간의 상관계수를 확인하면 문항 간 같은 방향으로 측정하는지, 반대 방향으로 측정하는지 쉽게 확인할 수 있습니다.

(아직 상관계수가 익숙하지 않은 분이 있다면.. 최대한 빠르게 업로드해보겠습니다. ㅎ)

첫 번째 방법을 사용하는 것이 제일 바람직하지만, 원자료가 공개되어 있지 않을 수 있고 또 찾기 어려울 수 있습니다.

첫 번째 방법을 가장 우선시 사용하면서 동시에 두 번째, 세 번째 방법을 보완적으로 사용할 것을 추천드립니다.

-----------------------------------------------------------------------------------------------------------------------------

2. 역문항이 포함된 변수 만들기

앞서 이야기하였던 자아존중감을 사용하여 실습을 해보겠습니다.

역문항은 상관계수를 사용해서 알아보겠습니다.

자아존중감은 코드북에 따르면 YPSY3A01부터 YPSY3A10까지 총 10문항으로 조사되었습니다.

제가 사용하는 R에서는 행 번호는 104번부터 113번까지 자아존중감 문항이네요(꼭 직접 행 번호 확인하시기 바랍니다. 사용 환경에 따라 차이가 있을 수 있습니다.)

그러면 이 10개의 문항에 대한 상관을 확인하면 되는데요,

상관계수를 확인하는 함수는 cor입니다.

cor(데이터셋)

지금 사용하는 2차 자료는 결측 값이 존재하는 자료입니다.

따라서 결측 값을 어떻게 처리할 것인지에 대한 설정을 꼭 해주어야 계산이 가능합니다.

이를 반영한 함수 식은 [그림 1]과 같습니다.

[그림 1] 상관계수 코드

study[,104:113] : study라는 데이터셋에서 104:113의 열을 지정

use = 'complete.obs' : 결측 값 완전 제거

method = 'pearson' : 피어슨 상관계수 사용

데이터셋에 결측 값이 없다면, cor(데이터셋)만 입력해도 계산을 할 수 있으나

결측 값이 존재한다면 오류가 발생합니다.

[그림 1]을 입력한 결과는 [그림 2]와 같이 나옵니다.

[그림 2] 상관계수 확인

그러면 -를 띄는 문항들은 역 문항이라고 간주할 수 있습니다.

그러면 2, 5, 6, 8, 9번 문항이 역 문항이네요

4점 척도로 측정되었기 때문에 4+1 = 5에서 각 문항 값을 빼줍니다.

역문항 계산 방법은

데이터셋[c(열번호1, 열번호2, 열번호3, 열번호4, 열번호5)] <- 측정최대값+1 -데이터셋[c( 열번호1, 열번호2, 열번호3, 열번호4, 열번호5)]가 되겠습니다.

각각의 열을 c() 로 지정해서 한 번에 계산할 수 있습니다.

[그림 3] 역문항 계산

이제 변수를 만들어보겠습니다. 변수를 만들면 [그림 5]와 같은 결과를 얻을 수 있습니다.

[그림 4] 변수 만들기

[그림 5] 역문항을 처리한 변수 생성

만약 역문항을 처리하지 않고 변수를 만들면 [그림 6]과 같은 결과가 나옵니다.

[그림 6] 역문항 처리하지 않은 변수

값이 많이 다릅니다.

처리를 하지 않고 변수를 사용한다면 굉장한 오류가 발생하겠죠?

1-2), 1-3)에 걸쳐서 변수를 만드는 법에 대해 알아보았습니다.

다음은 변수를 사용하여 기술 통계치를 확인하는 방법을 알아보겠습니다.

감사합니다!