최근 수정 시각 : 2024-04-11 16:19:41

SPSS

파일:SPSS 로고.svg
개발사 IBM Corporation
라이선스 상업소프트웨어
용도 통계분석, 데이터 수집
운영체제Windows, Linux, Unix, Mac
사이트파일:홈페이지 아이콘.svg

1. 개요2. 사용상의 특징과 유의점3. 사용환경
3.1. 변수 제어3.2. 입출력
4. 기초 기능
4.1. 데이터 가공4.2. 자료의 요약 및 정리4.3. 다중반응의 처리
5. 관련 문서6. 둘러보기

[clearfix]

1. 개요

사회과학통계 패키지. Statistical Package for the Social Sciences. 1968년부터 개발되어 오는 통계 프로그램이며, 현재의 주인은 IBM이다. IBM에서 2009년 이를 개발하던 SPSS 사를 인수하여 현재 이름은 IBM SPSS Statistics, 현재까지 출시된 최신 버전은 SPSS 29이다. 보통 대학교의 상경계열이나 사회과학 관련 통계 과목이라면 거진 SPSS 수업이다. 처음에 개발될 때는 메인프레임 컴퓨터에서 구동되게 만들어졌으며, 이렇기 때문에 완전 처음에는 데이터를 펀치카드로 넣어 작업했다지만, PC와 매킨토시 프로그램으로도 개발되어 현재에 이른다.

기본적으로 제공하는 분석이나 검증도 많긴 하지만, 본인이 실력만 되면 추가 분석 기법을 만들어서 SPSS에 탑재해 놓고 함께 돌릴 수 있다. 유틸리티 탭에서 사용자 정의 대화 상자를 클릭하고 .spd 확장자를 찾으면 된다. 역사가 꽤나 깊다보니 여러가지 오픈 소스 통계 프로그램들이 있으며, 이들 중에는 계량경제학에 특화된 gretl(#)이라든가, 자유 소프트웨어 재단에서 미는 PSPP (#) 등이 존재한다.

MS 엑셀과 유사해 보이기 때문에 진입 장벽이 낮지만 점점 STATAR 등이 인기를 끌고 있어서, 이 바닥에서도 통계 패키지 하나만 익혀서는 살아 남을 수 없는 시대가 오고 있다. SAS라는 통계 소프트웨어도 있고, 요즘엔 Python도 많이 쓴다. 그리고 사실 진입 장벽이 낮다고 하기도 어려운 게, 익히기는 쉬울지 몰라도 개인용으로 소장해서 연습을 하려면 부담이 엄청나다. 개인용 프로그램 가격이 무려 400~600만원. 기업용은 1000만원이 가볍게 넘어가며, 공용 네트워크 같은 데 쓰려면 라이선스 비용으로 1억원을 내야 한다.

따라서 대학의 경우 공용 컴퓨터실 혹은 강의실 컴퓨터에 SPSS의 설치 유무가 재단의 투자 규모를 짐작하는 수단이 된다고. 괴수급의 경우 MATLAB, SAS 등등 모든 데이터 프로그램이 깔린 경우도 있다. 돈이 없으면 불법 다운로드 하지말고 오픈 소스 통계 프로그램인 JASP 또는 Jamovi라는 좋은 대안 솔루션을 쓰자. SPSS의 축약형인 PSPP 또한 무료이며 꽤 쓸만하다.

2017년 IBM이 SPSS subscription 버전(월단위로 가입해서 기간동안만 사용하는 라이선스 정책)을 출시했다. Base edition은 한달에 14만원대에서 시작하므로 논문 기간중에 잠시 사용하는 사용자들에게는 기존 다운로드 버전보다는 비용 부담이 많이 낮아졌다. 아울러 인터넷 접속 전용의 SPSS 가상머신 버전을 제공하는 대학 기관도 국내외에 늘고 있다.

공과대학에서 프로그래밍한다고 하면(낮은 수준에서는 프로그래밍이라기 보단 단순 코딩이지만) MATLAB을 떠올리지만, 정작 프로그래밍을 전공하는 컴퓨터과학 전공자들은 MATLAB을 잘 쓰지 않는다. 이와 유사하게 통계 프로그램인 SPSS를 통계학 전공자들은 잘 쓰지 않는다. 역시 사회과학용이라 그런듯. 행정학 전공자들의 경우 행정계량분석에 유용하다.

2. 사용상의 특징과 유의점

SPSS는 통계학에 대한 본격적인 훈련이 갖춰지지 않은 이용자들을 대상으로 통계분석 명령의 직관성접근성을 극도로 높이기 위하여 개발된 특수한 통계패키지다. 다시 말하면 SPSS는 통계 잘 모르는 사람도 더듬더듬 하면서 익혀나가기가 매우 쉽다. 하지만 이를 위하여 SPSS는 많은 것을 희생해야 했는데, 대표적으로 대용량 데이터를 한번에 처리하기 곤란하여 천 행이 넘어가는 데이터를 다루기 힘들다는 점,[1] 처리속도가 그만큼 느려져서 한세월 기다려야 하는 일이 많다는 점 등이 꼽힌다. 통계패키지로서의 SPSS의 위상을 이해하려면 SPSS가 애초부터 특수한 목적 하에 만들어졌음을 인식하는 것이 도움이 된다.

중요한 것은, SPSS가 의도했던 바 최적의 조건 하에서는 부족함 없이 강력한 성능을 보여준다는 점이다. 프로그래밍을 전혀 모르는 사회과학자가 백수십 건 정도의 작은 데이터를 가지고 평범하게 t-검정을 하고자 한다면 SPSS를 마다할 이유가 전혀 없다. 세상에 완벽한 통계패키지는 없고, 설령 완벽에 가까운 것이 있다 해도 쓰는 사람이 아무 생각없이 쓰면 통계패키지도 똑같이 바보가 되게 마련이다. 문제는 SPSS를 쓰면 안 되는 상황, SPSS가 제 힘을 발휘하지 못하는 상황, SPSS보다 더 강력한 통계패키지를 써야 하는 상황에서도 구태여 SPSS를 붙잡고 늘어지는 경우다.

비유를 들자면 SPSS는 오토 자동차라고 할 수 있다. 우리 사회의 대다수의 사람들은 오토를 몰 수 있는 2종 보통 운전면허만 따도 살아가는데 지장이 없다. 이와 비슷하게 사회과학에서 SPSS만으로도 문제 없이 살아갈 수 있는 영역, 다른 언어를 익히는 것도 중요하지만 SPSS를 숙달하는 것이 우선인 영역도 있다. 운전면허의 급이 높을 수록 선택의 운전할 수 있는 차종의 폭이 넓어진다. 그러나 1종 대형 면허, 건설기계 면허와 같은 면허의 이름에 파묻혀서는 안된다. 면허 자체보다는 자신에게 필요한 면허를 취득한 후 도로주행이나 주정차 수칙을 소홀히 하지 않는게 더 중요하다. 이와 마찬가지로 사용하는 통계프로그램의 이름 자체보다 사용하고자하는 통계적 방법론을 정확하게 이해하고 사용하는 것이 더 중요하다.

기능상으로 보자면 상기했던 것처럼 무거운 프로그램이라는 점이 있다. 특히 하드웨어에 따라서는 속도가 남들 이상으로 느려지기도 한다. 최적의 환경에서도 다른 프로그램에 비해 속도가 느린 편이라 많은 자료를 처리하긴 어렵다. 특히 컴퓨터가 후달릴 경우에는 정말로 한세월 기다려야 하는 일도 있으며, 심하게는 "다운됐나?" 싶은 의심이 들 정도로 처리 중에 멈춰버리기도 한다. 이 모양이니 현대에 유행하는 빅데이터는 당연히 불가능하고, 자료가 많은 분야에서는 SPSS를 잘 안 쓴다. 이런 동네는 옛날부터 R이나 SAS와 같이 통계학 전공자들이 쓰는 프로그램이나 GAUSS, MATLAB 등 공대 계산 프로그램을 주로 써 왔다. 세부전공에 따라선 C나 Python을 쓰기도 하고.

세부적인 문제로 가장 자주 거론되는 것은, 요인분석(factor analysis)을 할 때 주축분해(principal axis factoring) 방식이 아닌 주성분(principal component, PCA) 방식을 디폴트로 설정한다는 것이다. 물론 최대우도(ML)나 그 외 다른 방법으로 설정할 수 있으므로 이론을 이해하고 있다면 별로 문제가 되지 않는다.[2] 하지만 분석가가 SPSS를 아무 생각 없이 만지다 보면 어처구니없는 함정에 빠지곤 하며, 그래서 이 작업을 할 때에는 SAS 등을 추천하는 분위기가 존재한다. 어떤 이들은 이것이 사용자의 무지나 게으름의 소치라고 말하면서 SPSS가 이미 최대우도법과 같은 다양한 추출방법을 함께 제공하고 있다고 말하지만, 학계에서 이런 비판을 하는 또 다른 중요한 이유는 PCA가 그 내적인 논리 상 절대로 요인분석 대화 창에 모습을 드러내서는 안 되는 분석이기 때문이다. 사용자들이 똘똘하게 생각해서 ML이든 뭐든 다른 요인추출을 알아서 하는 게 최선이겠지만, IBM 개발진들이 통알못이라는 볼멘소리는 계속 나오고 있다.

이처럼 자기가 무슨 옵션을 적용하는지도 모르는 채로 아무 생각없이 '버튼만 누르며' 분석하는 사회과학 대학원생들이 양산되다 보니, 학계에서 이에 대한 자정의 목소리가 나오기도 했다.[3] SPSS가 소위 '하이레벨' 의 프로그램, 즉 컴퓨터적인 사고방식에서 멀리 떨어져 있고 인간의 사고방식에 특화된 프로그램이다 보니, 문제의 원인을 SPSS에게서 찾는 사람들도 있었다. 이들에 따르면, SPSS는 사용자가 제대로 알지도 못하는 분석명령을 실행해도 어떻게든 결과를 내 주고, 그 결과 사용자는 무슨 자료를 다루기 위해 어떤 분석을 해야 하는지도 모르게 된다는 것이다.[4] 반면 R이나 Python처럼 직접 코드를 짜며 명령한다면 사용자 자신이 어떤 분석을 하는지 숙지하면서 제대로 된 해석을 한다는 것이다.

하지만 R이나 Python으로 코드를 짠다고 해서 통계적 방법에 꼭 정통한 상태로 분석명령을 하는 것은 아니다. 즉 데이터과학 전문가들이나 통계 컨설팅 업계의 이야기를 들어보면, 어떤 이들은 코드를 짜다 막혔을 때 일단 구글 검색부터 해서 이 하라는 대로 고스란히 따라하며 해결하거나, 심지어는 코드가 감이 안 잡히면 아예 GitHub에 들어가서 누군가가 올려놓은 코드 뭉치를 통째로 복사하여 붙여넣음으로써 분석명령을 성립시킨다는 일화들도 있다.

통계분석한다고 해서 엄청 긴 코드를 짜는 것도 아니고, 데이터 클리닝이나 미려한 그래픽을 출력할 때라면 모를까, 통계분석 자체에 필요한 코드는 이미 짜여져 있는 내장함수 한두 개 호출하는 것으로 끝나는데, 코딩으로 통계 돌린다고 자부하면서도 그거 하나도 제대로 못 하는 사람들이 그렇게나 많더라는 얘기다. 어느 분야에서나 어떤 통계패키지를 쓰건 간에 학문의 '심해' 를 전전하는 경쟁력 없는 분석가들은 늘 있게 마련이고, 이들도 먹고살기는 해야 하니 어떻게든 아마추어적인 길을 찾을 뿐이다. 따라서 그 원인을 SPSS 같은 특정 패키지에서 찾는 건 부적절한 진단이다. SPSS를 알지도 못하고 쓰는 관행은 분명 문제이지만, 꼭 SPSS에만 그런 사람들이 꼬이는 건 아니라는 것이다.[5]

실제로 전 세계의 코더, 프로그래머의 놀이터인 stack overflow를 가면, 사설 데이터 과학 학원에서 '이런 경우에는 이런 분석을 하면 됩니다'라는 식으로 배운 사람들이나 전문 강사, 연구자, 동료들의 피드백 없이 구글링으로 독학한 데이터 분석가들의 코드를 지적하는 글이 심심찮게 보인다. 그리고 여기에 달린 무수한 키배도 보인다. 코딩이라는 진입장벽이 어떻게든 분석 결과물만 만들어내는 행태를 방지하는 역할을 할 수도 있지만, 그 진입장벽을 넘어와서 막무가내 분석을 하는 사람들도 있기 마련이다.

마지막으로, 막대 그래프 및 각종 시각화된 도표와 자료들이 매우 추하다. 과장이 아니라 그림판으로 그려도 이거보단 낫겠다 싶을 정도이고, 디자인에 조예가 있는 사람들은 실제로 빡치고도 남을 수준. 다만 이러한 단점은 (시각화 패키지를 탑재하지 않은) R이나 PYTHON에서도 마찬가지이다. 도표나 자료는 자체 출력되는 것을 그대로 쓰기보다는 나중에 직접 깔끔하게 정리해서 만들어도 되기 때문에 엄청나게 치명적인 문제는 아니다.

다만 바쁜 연구자들 입장에는 그것조차 에너지 낭비일 수 있다. 그거 할 시간이면 공짜 프로그램인 R의 시각화 패키지 코드를 짜는 것이 훨씬 낫다고 생각하는 연구자도 있을 수 있다. 특히 빅데이터 분석은 시각화가 굉장히 중요하기 때문에, 빅데이터가 보편화될수록 시각화 문제는 SPSS의 뼈아픈 한계로 남을 것으로 보인다.

3. 사용환경

매우 직관적이다. 다른 통계 프로그램들이 익숙해지는 데 상당한 시간을 요하는 것과는 달리, SPSS는 처음 보더라도 "이거 엑셀 아냐?" 하는 반응이 나올 정도로 익숙한 창 형태를 하고 있다. 당연히 엑셀과도 서로 파일 호환이 된다. 한눈에 들어오는 가장 대표적인 차이점이 있다면, 엑셀과는 다르게 SPSS는 워크시트 같은 개념이 없고 그 대신 데이터 보기(D) 탭과 변수 보기(V) 탭 두 개만으로 창이 제어된다는 것이다. 이는 서로 동일한 데이터 파일을 서로 다른 기준으로 보겠다는 것으로, 데이터 보기의 경우 세로열은 각각의 변수, 가로행은 각각의 관측된 케이스로 정렬된다면, 변수 보기의 경우 세로열은 변수의 설정, 가로행은 각각의 변수로 정렬된다.
<colbgcolor=#EEEEEE,#262626> 📏거주년수📏교육년수📏소득분위📏만족도변수변수
129575
2179680
3813480
4513760
5..2.
63115.

데이터 보기 탭으로 파일을 보았을 때의 모습이다. 세로열 첫째 행마다 각 변수들이 정의되어 있고, 변수 왼쪽의 눈금자 표시는 그 변수가 등간(interval) 혹은 비율(ratio) 수준에서 측정된 양적 자료임을 의미한다.[6] 가로행 첫째 열은 숫자가 지정되어 있고, 따라서 이 행이 몇 번째로 관측된 케이스를 다루고 있는지를 나타낸다. 하나의 케이스에 한 명의 응답자가 대응되므로, 케이스의 총 수는 전체 응답자의 수가 된다. 모든 셀 속의 숫자들은 기본적으로 우측 정렬이 되어 있고, 이 때문에 SPSS는 유난히 엑셀스러운 인상을 준다. 결측값의 경우 별다른 변수가 지정되어 있지 않다면 그냥 빈 셀로 남겨지지만, 변수가 지정되어 있는데 데이터가 입력되지 않았다면 SPSS가 직접 마침표 하나를 찍어 준다.
<colbgcolor=#EEEEEE,#262626> 이름유형너비소수점이…레이블결측값측도역할
1거주년수숫자80 지정않음지정않음📏척도↘ 입력
2교육년수숫자80 지정않음지정않음📏척도↘ 입력
3소득분위숫자8010분위 기준지정않음지정않음📏척도↘ 입력
4만족도숫자80100점 만점지정않음지정않음📏척도↘ 입력
5
6

변수 보기 탭으로 파일을 보았을 때의 모습이다. 같은 파일임에도 불구하고 변수를 기준으로 보여주기 때문에 사뭇 달라 보인다. 세로열 첫째 행은 변수의 각 설정사항들을 보여주고, 가로행 첫째 열은 변수마다 부여된 번호를 나타낸다. 따라서 데이터 보기 탭에서는 아래로 뭔가를 잔뜩 입력해 내려갈수록 관측된 케이스(응답자)가 많다는 의미가 되지만, 변수 보기 탭에서는 그만큼 분석에 활용될 변수가 많다는 의미가 된다. 초심자는 데이터를 입력할 때 두 탭 사이에서 자칫 헷갈릴 수도 있다.

3.1. 변수 제어

변수 보기 탭에서는 11가지의 변수 관련 설정이 가능하지만, 여기서는 일단 학위논문이나 사회조사분석사 자격시험을 준비하는 정도로 평범한(…) 사용자가 쓸 만한 주요한 설정들만 소개한다.
  • 이름: 말 그대로 변수의 이름. 알파벳 64글자 또는 한글 32글자까지 허용하지만, 실질적인 기능 지원을 바란다면[7] 알파벳 8글자 이내로 간략하게 표시해야 한다. 그리고 변수명을 짧게 쓸지 길게 쓸지는 일장일단이 있는데, 너무 짧으면 온갖 약어들로 범벅이 되는 바람에 자기가 쓴 것을 자기가 이해하지 못하는 상황이 벌어지고, 변수가 많을수록 약어들을 달리 설정하기도 힘들어진다. 반면 변수명이 너무 길면 나중에 출력할 때 지저분해 보일 가능성이 있다.
  • 소수점이하 자리수: 변수의 소숫점을 몇 자리까지 표시할지 지정한다. 셀을 클릭하면 오른쪽에 자그마한 ▲ 버튼과 ▼ 버튼이 띄워지므로 이걸 클릭해서 조절할 수도 있다.
  • 레이블: 사용자의 편의를 위해 변수에 관련된 간략한 설명을 하는 공간. 출력 결과에 영향을 끼치지는 않는다. 위의 이름 설정에서는 짧은 약어로 이름을 짓되, 레이블에서 상세한 이름을 설명하는 것도 좋은 방법이다.
  • : 질적 자료의 코딩 값이 어떤 질적 의미를 갖는지 대응시킨다. 값 레이블 창이 열렸을 때 기준값에는 숫자를, 레이블에는 의미를 입력할 수 있다. 예를 들어 어떤 데이터에 "정주의향" 이라는 변수가 있고, 응답을 예(Y) 혹은 아니오(N)의 두 가지로만 받았다고 가정하자. 이 경우 코딩은 1과 2의 두 숫자로 하게 되는데, 값마다 레이블을 설정하면 1="예(Y)", 2="아니오(N)" 로 대응시킬 수 있다. 이렇게 하는 이유는 나중에 출력할 때 쓰기 위함으로, 값마다 레이블을 지정하지 않으면 출력할 때 죄다 숫자로만 표시된다. 값이 다양한 질적 자료일 경우,[8] 가령 "거주지역" 변수 같은 경우는 4라는 숫자가 충북인지 충남인지 아니면 다른 동네인지 알 수가 없어진다.
  • 결측값: 원천자료(raw data)에서 결측값을 공란으로 두지 않고 특정한 값으로 대치해 두었다면, 그 값을 탐지했을 때 결측값 처리하여 분석에서 제외할 수 있다. 예컨대 숫자 9를 결측값으로 처리한 문항이 있을 경우, 해당 문항에 대응되는 변수에서 결측값 창을 열고 '이산형 결측값' 에 표시한 후 9를 입력하면 된다. 그런데 모든 변수들에 공통적으로 결측값을 지정하는 방법이 딱히 없어서, 결측값을 지정해야 할 변수들이 매우 많을 경우에는 꼼짝없이 노가다가 되고 만다. SPSS의 잘 알려진 단점 중 하나.
  • 측도: 자료의 측정 수준을 설정한다. 질적 자료는 '명목형' 혹은 '순서형' 으로, 양적 자료는 '척도' 로 설정하면 된다. 새로 생성된 변수의 디폴트값은 명목형이다. 이것도 여러 개의 변수들의 측도를 바꿀 때 한꺼번에 적용하는 방법이 없어서, 예컨대 수십 개의 양적 변수들을 전부 척도로 설정하려면 또 노가다가 된다.

3.2. 입출력

먼저 주의하자면 SPSS는 데이터를 입출력할 수도 있지만 명령문(syntax)을 입출력할 수도 있다. SPSS 중수급 이후부터는 특정 매크로 명령문을 작동시켜 놓은 상태에서 데이터 작업을 하거나, 아예 분석 작업 자체를 명령문만 가지고 수행하기도 한다.[9] 그러나 일단 여기서는 초심자들을 위해 데이터의 입출력 위주로 설명한다.

절대 다수의 사용자들은 SPSS 데이터를 직접 입력하기보다는 외부에서 이미 만들어진 데이터 파일을 불러온다. 대표적으로 호환되는 것이 .txt 파일과 위에서 언급한 .xlsx 파일로, 엑셀에서 외부 문서 불러오기 기능을 알고 있다면 SPSS에서도 어렵지 않게 적응할 수 있다. 엑셀 파일을 불러올 경우 'Excel 파일 읽기' 창이 뜨게 되며 주어진 엑셀 파일에서 어떤 워크시트를 가져올 것인지 지정해야 한다. 상기한 것처럼 SPSS에는 워크시트 개념이 없어서 한 번에 하나의 데이터 시트만 취급할 수 있기 때문. 그리고 SPSS는 데이터의 첫 행에서 변수의 이름을 자동으로 읽어올 수 있으므로, 향후 SPSS로 넘길 예정인 엑셀 파일은 첫 열이 아닌 첫 행에다 변수명을 지정해 주어야 한다.

SPSS를 켜 보면 데이터 창 외에도 출력 창이 함께 켜지는데, 이를 다시 말하면 SPSS는 저장해야 할 대상이 두 종류라고 할 수 있다. (혹시라도 명령문을 편집했다면 명령문도 저장할 수 있지만 여기서는 생략한다.) 데이터에 변경사항이 발생했다면 SPSS는 그 변경된 내용을 저장할 수 있다는 것은 간단하지만, 출력 창은 사용자가 SPSS에게 어떤 가공 명령을 내리거나 명령문을 작동시키거나 특정한 계산을 했거나 데이터 분석을 시키는 등의 의미 있는 '사용' 을 했을 때 계속해서 업데이트되는 로그 창이라고 할 수 있다. 물론 통계분석을 시켰을 경우에도 그 분석결과가 출력 창에 띄워지므로, 이 결과를 따로 뷰어로 보기 위해서 저장해 놓을 수도 있으며 단순한 표 정도라면 마우스 우클릭으로 복사해서 다른 곳에 가져갈 수도 있다. 한컴오피스 한글과도 호환이 되긴 하는데, 한글에서 표를 붙여넣어 보면 미적으로 매우 보기 좋지 않은(…) 표가 되어 나타난다. 표 속의 글꼴조차 전부 굴림체다.

출력 창에 띄워진 결과들은 최종적으로 확정된 것이 아니며, 몇몇 표들은 보기 방식을 바꿀 수도 있고 시각화된 그래프들은 조금이나마 더 예쁘게 다듬을 수는 있다. 대표적으로 SPSS에서 상관행렬(correlation matrix)을 출력했을 경우 간혹가다 매우 지저분하게 나오는 경우가 있는데, 가로행과 세로열에 들어갈 요소들을 이리저리 바꾸면서 깔끔한 상관행렬로 어렵지 않게 바꾸는 것이 가능하다. 또한 산점도(scatterplot)에 추세선을 더하거나, 도표의 글씨 크기를 키우거나, 이상점의 표시 형식을 바꾸는 등의 '꾸미기' 기능들은 전부 출력 창에서 지원되며, 바꾸기를 원하는 결과 위에서 마우스 더블클릭을 하면 대화 창이 띄워지므로 서식 작업을 하면 된다.

4. 기초 기능

4.1. 데이터 가공

상기한 초급 수준의 이용자가 자주 쓰게 되는 가공 방식들에 대해서 설명한다.
  • 데이터 결합: '데이터' → '파일 합치기' → '케이스 추가' or '변수 추가'
    케이스 추가는 케이스를 말 그대로 아래로 결합해 붙이는 기능이라면, 변수 추가는 변수를 오른쪽으로 결합해 붙이는 기능이라고 할 수 있다. 이때 변수가 서로 일치한다면 다행이지만 일치하지 않을 수도 있는데, SPSS는 두 데이터에 존재하는 모든 변수들을 전부 띄워놓고 이 중에서 포함시킬 데이터와 제외시킬 데이터를 분류하라고 안내한다. 여기서 기준변수는 양쪽의 케이스가 동일하다는 기준으로 삼기 위해 양쪽 데이터에 공히 존재하는 변수를 잡아주면 된다. A데이터를 기준으로 B데이터에서 필요한 부분만 선택적으로 가져와야 한다면 대화 창에서 '(비)활성 데이터 세트가 기준표임' 표시를 클릭하면 된다.
  • 케이스 선택: '데이터' → '케이스 선택'
    이번에는 전체 케이스를 다 쓰지 않고 그 중 일부만 분석에 활용한다. 무선추출도 가능하지만 가장 흔히 쓰는 기능은 '조건을 만족하는 케이스' 로서, 변수 목록과 함께 작은 계산기 자판이 띄워진다. 예를 들어 남성만 뽑아서 분석하고 싶다면 성별 변수를 클릭하고 오른쪽에 =1 이라고 수동으로 입력해 주면 된다. 이렇게 하면 흔히 1로 코딩된 남성의 케이스만 남게 되고, 흔히 2로 코딩된 여성의 케이스에는 모두 맨 왼쪽 세로열에 / 사선이 그어져서 제외된 케이스임을 알린다.[10] 이 기능을 활용할 경우 자동으로 filter_$ 변수가 생성된다.

    2개 이상의 조건을 활용할 경우 계산기에서 & 버튼과 | 버튼을 숙지해야 한다. SPSS도 엑셀과 같은 논리를 갖고 있어서, '남성이면서 서울 거주자' 조건과 '남성이거나 서울 거주자' 조건을 서로 다르게 이해한다. 전자(AND 논리)를 원한다면 & 버튼을 활용하면 되며, 두 조건을 모두 만족하는 케이스만 선택된다. 만일 후자(OR 논리)를 원한다면 | 버튼을 활용하면 되고, 두 조건 중 하나 이상을 만족하는 모든 케이스가 선택된다.
  • 변수 계산: '변환' → '변수 계산'
    위에서 보았던 그 계산기가 변수 목록과 함께 또 띄워진다. 이후부터 할 일은 분야마다 조금씩 달라지는데, 지수(index)를 자주 쓰는 학문분야들에서는 각 변수들을 숫자표현식 창에다 집어넣고 사칙연산 식을 수작업으로 그려주어야 하며, 척도(scale)를 자주 쓰는 학문분야들에서는 거의 반드시 평균을 구하는 계산을 하게 된다. 그 외에 조절모델이 중요한 약학이나 의학, 심리학, 생리학 등의 일부 분야들에서 센터링(centering)을 하면서 쓰게 되기도 한다.

    목적이 지수의 산출이든 평균의 계산이든 그 외의 것이든, 제일 먼저 할 일은 왼쪽 위의 '목표변수' 창에다 새로 정의할 변수의 이름을 정해주는 것이다. 이후 숫자표현식에서 목표변수가 케이스별로 가질 값을 어떻게 계산할지를 정해주면 된다. 평균 계산의 경우 오른쪽 '함수 집단' 메뉴에서 통계를 찾은 후, 하단의 '함수 및 특수변수' 메뉴에서 Mean을 고르면 된다. 이때 숫자표현식에 MEAN(?,?)라고 띄워지는데, 참으로 엑셀스럽게도 소괄호 속에다 모든 변수들을 집어넣고 쉼표로 구분해 주라는 의미다.[11] 단지 SPSS에서는 셀을 집어넣는 게 아니라 정의된 변수를 집어넣을 뿐이다. 문항 5개의 평균을 내야 한다면 MEAN(문항1,문항2,문항3,문항4,문항5) 이렇게 적어주면 끝. 대화 창 아래쪽에 케이스 선택을 위한 '조건' 버튼이 있는데, 사회조사분석사 실기시험에서는 거의 반드시 이걸 함께 활용하게 된다.
  • 코딩 변경: '변환' → '같은 변수로 코딩변경' or '다른 변수로 코딩변경'
    두 메뉴의 차이점이라면 코딩을 변경해 준 결과를 기존의 데이터에 덮어씌울 것인지(같은 변수로 코딩변경) 아니면 새 변수로 추가할 것인지(다른 변수로 코딩변경)밖에 없다. 학술적인 목적의 이용자들은 거의 대부분 아래의 두 가지 중 하나를 위해 이 대화 창에 들어오게 된다.

    첫째로 역코딩(reverse coding)을 하려는 경우가 있다. 리커트 척도로 측정된 데이터에서 각 값들을 거꾸로 뒤집어 줄 때 역코딩을 하게 된다. 5점 척도를 역코딩한다고 가정하자. 이 경우 뒤집을 변수를 목록에서 선택한 뒤 새로 만들 출력변수의 이름을 정의하고,[12] '기존값 및 새로운 값' 버튼으로 들어가서 왼쪽 기존값 맨 위의 '값' 을 클릭하고 1, 오른쪽 새로운 값 맨 위의 '값' 을 클릭하고 5를 입력한 뒤 아래쪽 '추가' 버튼을 누른다. 그러면 빈 공간에 1→5 글자가 띄워지며, 동일한 방식으로 2→4, 3→3, 4→2, 5→1까지 반복해 주면 된다. 유의할 점으로, 1을 5로 바꾸었다고 해서 기존의 5가 자동으로 1로 역코딩되지는 않는다. 기존의 5는 그대로 5로 뒤섞일 뿐이다. 3 또한 굳이 코딩해 주지 않으면 그대로 결측값이 되어 버린다. 마지막으로 '계속' 을 클릭해 나가고, 대화 창에서 '변경' 을 누른 뒤 '확인' 을 눌러서 역코딩을 완료할 수 있다.

    역코딩에는 또 다른 방법도 있다. 특히 7점 이상으로 값이 많을 경우, 위에 적힌 방식으로는 상당히 시간도 오래 걸리고 실수하기도 쉽다. 이럴 때는 '변수 계산' 으로 들어가서, n점 척도를 역코딩하기 위해 '(n+1)-변수명' 입력을 해 주면 되는 것이다. 예를 들어 8점 척도의 변수명이 V4라면 '9-V4' 를 입력하면 끝난다는 것. 이 경우 8점 만점 코딩은 9-8=1로 역코딩되고, 1점 코딩은 9-1=8로 역코딩된다. 척도의 값이 많으면 많을수록 빛을 발하는 방법이며 실수할 가능성도 적으니 잘 기억해두자.

    둘째로 콜랩스(collapse)가 간혹 필요한 경우가 있다. 이는 정보량의 손실을 무릅쓰면서 데이터의 측정 수준을 낮추는 것으로, 예를 들면 cm 단위로 측정된 키 변수의 데이터를 '큰 키', '중간 키', '작은 키' 같은 식으로 뭉개 버리는 것이다. 실무에서도 인사고과 점수에 따라 '우수', '보통' 같은 식으로 랭킹을 매겨야 할 때에도 쓰인다. 이때는 '기존값 및 새로운 값' 에서 왼쪽의 기존값 중간부터 나오는 '범위' 를 활용해서 지정해 주면 된다. 많은 경우 새로운 값이 문자열로 나오게 되는데, 이때는 오른쪽 아래에 '출력변수가 문자열임' 체크박스를 클릭해 줘야 한다. 사회조사분석사 실기 시험에서 이 기법이 단골로 출제되는데, 이유는 이렇게 해서 연령 변수를 '연령대' 라는 서열 변수로 뭉개줘야만 이걸 가지고 분산분석도 하고 교차분석도 하기 때문이다.
  • 순위 생성: '변환' → '순위변수 생성'
    자주 쓰이지는 않지만, 엑셀의 RANK.EQ 함수와 똑같은 기능으로 매우 쉽다. 줄 세울 기준 변수를 뽑아서 '변수' 칸으로 옮겨놓고, 필요하다면 '등순위' 버튼을 눌러서 동점자가 나올 경우 평균값으로 순위를 매길 것인지, 큰 순위를 매길 것인지, 작은 순위를 매길 것인지 정해준다.

4.2. 자료의 요약 및 정리

'빈도분석' 메뉴와 '기술통계' 메뉴, '탐색', 그리고 '교차분석' 의 네 가지가 주로 꼽힌다. 네 메뉴는 제공되는 기능에 미묘한 차이가 있어 구분이 필요하다. 먼저 빈도분석과 기술통계를 비교하면 다음과 같다.
빈도분석기술통계
전체 케이스 수
결측값 수
주요 기술통계량
(평균, 표준편차, 왜도, 첨도, 최솟값, 최댓값, 합계, 범위)
빈도표(N,%)
빈도 차트
사분위수[13]
중앙값
최빈값
양적 변수 요약

헷갈릴 수 있으므로 그냥 질적 변수는 빈도분석, 양적 변수는 기술통계라고 생각해 버려도 된다. 만약 잘못해서 빈도분석으로 들어가서 양적 변수를 넣고 돌렸다가는 위아래로 한도끝도 없이 길어진 빈도표를 볼 수 있다. 기술통계는 사용할 수 있는 통계 옵션이 훨씬 적긴 하지만, 빈도의 관점에서 접근하지 않고 자료를 요약하는 기능에만 충실하기 때문에 양적 변수를 활용할 수 있다.
본 설문에 대해 ○○구 지역주민 500명(남성 243명, 여성 257명, 평균연령 47.7세, 표준편차 8.93)이 단순 무작위 추출되어 응답에 참여하였다.
위 문장을 논문이나 보고서에 넣어야 할 경우 '성별' 변수와 '연령' 변수가 필요하다. 여러 방법이 있겠으나 성별 변수를 빈도분석해서 남녀 간 응답자 수를 각각 보여주고(녹색), 연령 변수를 기술통계해서 평균과 표준편차를 구하면(파란색) 적어도 헷갈리지는 않을 수 있다.

한편 '탐색' 메뉴의 경우 전체 케이스를 따로따로 나누어 기술통계할 일이 있을 때 쓰이며, 기준이 되는 질적 변수를 '요인' 으로, 알고자 하는 양적 변수를 '종속변수' 로 넣고 돌리면 된다. 예컨대 응답자들의 키의 평균과 표준편차를 알고자 하는데 남녀별로 구분해서 확인해야 한다면, '요인' 에는 성별 변수를 넣고, '종속변수' 에는 키 변수를 넣어서 돌리면 남녀 양쪽의 키에 관련된 수치들이 따로따로 얻어진다. 추론통계를 위해 신뢰구간과 표준오차도 함께 구해주며, 나중에 더 본격적인 분석을 할 때 분석논리 정당화의 일환으로 데이터의 정규성을 증명할 때에도 '탐색' 메뉴로 와서 정규성 검정을 할 수 있다.

마지막으로 '교차분석' 메뉴에서는 독립성, 동질성, 적합도 등의 다양한 검정까지도 지원할 수 있지만, 기술통계를 목적으로 할 경우 자료의 관측빈도를 바탕으로 정리할 수도 있다. 이 메뉴는 일반적으로는 두 종류의 범주형 변인을 가로세로로 교차시켜서 두 범주값에 모두 해당하는 케이스가 각 셀별로 몇 건이나 나타나는지 보여준다. 가장 쉬운 예로는 '성별' 변수와 '종교유무' 변수를 교차시켜서, '남성 종교인', '남성 비종교인', '여성 종교인', '여성 비종교인' 의 네 종류 셀의 빈도를 보여주는 경우이다. 만일 여기서 논리를 더 전개하여 "남성들이 여성들보다 비종교인의 비율이 높다" 같은 주장을 검증하고 싶다면 단순 빈도표로는 불가능하고, 독립성검정(성별 변수와 종교유무 변수 간에는 상관이 존재한다) 혹은 동질성검정(남녀 간의 종교유무 분포는 동질적이지 않다) 쪽으로 넘어가야 한다.

[빈도분석의 명령과 결과]

구체적인 출력내용은 사용목적 및 버전에 따라 다를 수 있다.
분석 ▶ 기술통계량 ▶ 빈도분석 ▶ [변수입력]
▶ 통계량 ▶ 평균ⓥ / 표준편차ⓥ ▶ 계속
▶ 빈도표 표시ⓥ
▶ 확인
위의 방식대로 명령을 내리면 아래와 같은 결과가 나온다. 색상으로 칠해진 셀의 경우 결과보고의 대상이 되므로 주의를 기울여야 한다.
통계량
변수1, 변수2
<colbgcolor=#EEEEEE>N<colbgcolor=#EEEEEE>유효
결측
변수1
 빈도퍼센트유효 퍼센트누적 퍼센트
<colbgcolor=#EEEEEE>유효<colbgcolor=#EEEEEE>값1
값2100.0
전체100.0100.0
변수2
 빈도퍼센트유효 퍼센트누적 퍼센트
<colbgcolor=#EEEEEE>유효<colbgcolor=#EEEEEE>값1
값2
값3100.0
전체100.0100.0


[기술통계의 명령과 결과]
분석 ▶ 기술통계량 ▶ 기술통계 ▶ [변수입력]
▶ 옵션 ▶ 평균ⓥ / 표준편차ⓥ ▶ 계속
▶ 확인
위의 방식대로 명령을 내리면 아래와 같은 결과가 나온다. 색상으로 칠해진 셀의 경우 결과보고의 대상이 되므로 주의를 기울여야 한다.
기술통계량
 N평균표준편차
<colbgcolor=#EEEEEE>변수1
변수2
유효 N(목록별)


[탐색의 명령과 결과]
분석 ▶ 기술통계량 ▶ 탐색 ▶ [요인입력] ▶ [종속변수입력]
▶ 통계량 ▶ 기술통계ⓥ ▶ 계속
▶ 확인
위의 방식대로 명령을 내리면 아래와 같은 결과가 나온다. 색상으로 칠해진 셀의 경우 결과보고의 대상이 되므로 주의를 기울여야 한다.
케이스 처리 요약
케이스
유효결측값총계
N퍼센트N퍼센트N퍼센트
<colbgcolor=#EEEEEE>변수1100.0%
변수2100.0%
기술통계
 통계표준오차
종속변수요인-값1<colbgcolor=#EEEEEE>평균<colbgcolor=#FFFFFF>
평균의 95% 신뢰구간<colbgcolor=#EEEEEE>하한<colbgcolor=#FFFFFF>
상한
5% 절사평균
중위수
분산
표준편차
최소값
최대값
범위
사분위수 범위
왜도
첨도
요인-값2평균
평균의 95% 신뢰구간하한
상한
5% 절사평균
중위수
분산
표준편차
최소값
최대값
범위
사분위수 범위
왜도
첨도


[교차분석의 명령과 결과]
분석 ▶ 기술통계량 ▶교차분석
▶ [행-변수입력] ▶ [열-변수입력]
▶ 셀 ▶ 관측빈도ⓥ ▶ 계속
▶ 확인
위의 방식대로 명령을 내리면 아래와 같은 결과가 나온다. 색상으로 칠해진 셀의 경우 결과보고의 대상이 되므로 주의를 기울여야 한다.
케이스 처리 요약
케이스
유효결측값총계
N퍼센트N퍼센트N퍼센트
<colbgcolor=#EEEEEE>행변수*열변수100.0%
행변수*열변수 교차표
빈도
열변수전체
값1값2
<colbgcolor=#EEEEEE>행변수<colbgcolor=#EEEEEE>값1
값2
값3
전체

4.3. 다중반응의 처리

Q. 귀하께서 지난 1주 동안 참여하셨던 야외 레저활동을 해당되는 대로 모두 체크해 주십시오. (중복응답)

① 산책·조깅  ② 자전거  ③ 보딩   ④ 구기종목(축구·농구·테니스 등)
⑤ 등산·산악레포츠  ⑥ 낚시·수상레포츠  ⑦ 항공레포츠  ⑧ 테마파크
⑨ 휴양·산림욕  ⑩ 캠핑·차박  ⑪ 마을축제  ⑫ 박물관·예술관·전시관
⑬ 기타 레저활동

위의 사례처럼[14] 응답자가 여러 보기들에 중복으로 응답할 수 있게 하는 문항을 SPSS에서는 다중반응이라고 하며, 그 코딩은 다소 복잡해진다. 일단, 위 사례에서 응답자들이 어떤 식으로 응답할지 전부 예상해서 숫자체계를 부여하는 것은 매우 비효율적이다. 따라서, 문항별로 변수를 지정하는 대신에 보기별로 변수를 지정하고, 각 보기들을 '체크함' 은 1, '체크하지 않음' 은 0으로 코딩하는 명목형 측도로 설정하게 된다. 결과적으로 위 사례에서는 총 13개의 변수들이 새로 지정되며, 이후 이를 묶어서 변수군을 정의하게 된다.

이때 변수군 정의 대화 창에서 사용자는 자신이 변수군에 포함시키고자 하는 모든 보기 변수들을 전부 집어넣고, 그 코딩형식을 '이분형' 에 체크하고 빈도화 값으로 1을 입력하게 된다. 그리고 그 아래에서 변수군의 이름을 정의한 후 마지막으로 오른쪽에 위치한 '추가' 버튼을 눌러서 추가한다. 이름이 정의되면 변수군은 이름 앞에 자동으로 달러($) 표시가 붙게 되며, 위 사례에서 변수군의 이름을 '야외레저' 로 정의했다면 SPSS는 그 변수군을 '$야외레저' 로 관리한다. 달러 기호가 보기 싫다면 '레이블' 에다 출력 때 쓰일 이름을 별도로 입력해 주면 된다.

이후에는 분석목적에 따라서 빈도분석 혹은 교차분석을 하게 되며, 다중반응 분석은 무조건 사전에 정의된 변수군만을 활용할 수 있다. 빈도분석 대화 창에서 방금 전에 정의했던 변수군을 오른쪽의 '표작성 반응군' 으로 옮기면 각 보기별 응답빈도가 분석되며, 중복응답을 한 케이스가 많으면 많을수록 케이스 중 퍼센트(%)는 100을 넘어서 그 이상으로 올라갈 수 있다. 한편 변수군을 활용하는 교차분석은 그 다중반응 응답결과가 다른 명목형 변수와 갖는 관계성을 빈도의 관점에서 보여준다. 그러나 어느 쪽이든 도표가 지원되지는 않는다는 게 단점.

[다중반응 빈도분석의 명령과 결과]
분석 ▶ 다중반응 ▶ 변수군 정의
▶ [변수입력] ▶ 이분형ⓥ / 빈도화 값(1) ▶ [이름정의] ▶ [레이블정의] ▶ 추가
▶ 닫기
분석 ▶ 다중반응 ▶ 빈도분석
▶ [변수군입력] ▶ 확인
위의 방식대로 명령을 내리면 아래와 같은 결과가 나온다. 색상으로 칠해진 셀의 경우 결과보고의 대상이 되므로 주의를 기울여야 한다.
케이스 처리 요약
케이스
유효결측값총계
N퍼센트N퍼센트N퍼센트
<colbgcolor=#EEEEEE>$변수군a100.0%
a. 값 1을(를) 가지는 이분형 변수 집단입니다.
$변수군 빈도
반응케이스 중 %
N퍼센트
<colbgcolor=#EEEEEE>$변수군a<colbgcolor=#EEEEEE>보기1<colbgcolor=#FFFFFF><colbgcolor=#B7F0B1>%%
보기2%<colbgcolor=#FFFFFF>%
보기3%%
전체100.0%%
a. 값 1을(를) 가지는 이분형 변수 집단입니다.


[다중반응 교차분석의 명령과 결과]
분석 ▶ 다중반응 ▶ 변수군 정의
▶ [변수입력] ▶ 이분형ⓥ / 빈도화 값(1) ▶ [이름정의] ▶ [레이블정의] ▶ 추가
▶ 닫기
분석 ▶ 다중반응 ▶ 교차분석
▶ [열-변수군입력] ▶ [행-명목변수입력]
▶ 범위지정 ▶ 최소값(1) / 최대값(3) ▶ 계속
▶ 옵션 ▶ 전체ⓥ ▶계속
▶ 확인
위의 방식대로 명령을 내리면 아래와 같은 결과가 나온다. 색상으로 칠해진 셀의 경우 결과보고의 대상이 되므로 주의를 기울여야 한다.
케이스 처리 요약
케이스
유효결측값총계
N퍼센트N퍼센트N퍼센트
<colbgcolor=#EEEEEE>명목변수*$변수군100.0%
명목변수*$변수군 교차표
$변수군a전체
보기1보기2보기3
<colbgcolor=#EEEEEE>명목변수<colbgcolor=#EEEEEE>값1<colbgcolor=#EEEEEE>빈도
전체 중 %%%%%
값2빈도
전체 중 %%%%%
값3빈도
전체 중 %%%%%
전체빈도
전체 중 %%%%100.0%
퍼센트 및 합계는 반응자수를 기준으로 합니다.
a. 값 1을(를) 가지는 이분형 변수 집단입니다.

5. 관련 문서

6. 둘러보기

🏬 사회과학 조사·연구 방법론 둘러보기
{{{#!wiki style="margin: 0px -10px -5px; min-height: 26px"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin: -5px -2px -11px"
<colbgcolor=#C1F3FF>📝 서론<colbgcolor=#F7FFFF,#191919>사회과학 · 과학적 방법 · 사회조사 · 연구 · 가설 · 이론(이론적 조망) · 연구윤리
🔍 조사방법론 I변인 · 정의 · 상관관계와 인과관계 · 실험(실험설계 · 통제 · 통제집단과 실험집단) · 사례연구
자료 · 자료수집(면접법 · 초점집단면접법 · 질문지법 · 관찰법) · 코딩
📈 조사방법론 II표본조사 · 지표 · 측정 · 신뢰도와 타당도 · 지수 · 척도
📊 사회통계통계적 방법 · 기술통계학 · 확률 및 분포 · 추론통계학 · SPSS · 분석기법(분산분석 · 회귀분석)
👔 공인 자격증사회조사분석사 · 빅데이터분석기사 · 국가공인 데이터분석 전문가
📂 메타 문서연구방법론 관련 정보
상기 문서들은 한국통계진흥원 및 한국산업인력공단의 출제범위에 의거하여 엄격히 망라되어 있으며, 동 기관의 과목별 구분·명명에 의거하여 조사방법론은 2파트로 구분됨
}}}}}}}}} ||



[1] 이론적으로는 32 767개의 변수(열)와 21억5천만개의 케이스(행)을 다룰수 있다.[2] 일반적으로 자연과학에서는 PCA-Varimax 회전, 사회과학에서는 ML-Direct Oblimin 세팅하고 분석하면 된다.[3] 심지어 통계분석 전문가들은 의학논문을 쓰는 의사들조차 이런 식으로 '버튼 누르기' 위주로 통계분석을 하는 경우가 많다고 성토하기도 한다.[4] 비슷한 사례로 구조방정식 모델링(SEM)을 지원하는 프로그램인 AMOS의 경우에도, 아무 생각없이 화살표만 쭉쭉 그어대고 버튼만 열심히 누르면 '숫자만큼은 그럴싸한' 허울 좋은 모델을 만들 수 있다. 하지만 좋은 Model Fit을 얻기 위해서는 어떤 기준으로 변수를 넣고 빼고, 어떤 방향으로 경로를 재설정해야 하는지를 이론적으로 알아야 하기 때문에 단순히 그림만 그릴 줄 알아가지고는 학위 논문이든 학술지 논문이든 통과가 절대 어렵다.[5] 사실 모든 사회과학자가 전부 통계학자나 데이터 과학자는 아니기 때문에, 이론부터 코딩같은 테크닉적인 요소까지 모두 섭렵하기에는 적지 않은 노력이 필요하다. 그런데 SPSS로 본인이 원하는 형태의 데이터를 돌릴 수 없는 상황이라면 어쩔 수 없이 R이나 PYTHON에 복봍 코딩이라도 해야한다. 그런데 대학에서 교수는 강의에 행정 업무 부담도 많아서 개인 연구 시간이 결코 많다고 볼 수 없는게 현행이고, 대학원생은 그보다도 더 바쁜데 이렇게라도 노력해보겠다는 학자들을 코딩 직접 못 짠다고 무작정 비난할수는 없는 노릇이다. 물론 복붙 코딩하는 주제에 쓸때없는 부심을 부리면서 다른 학자를 깎아내리는 부류라면 당연히 비판받아 마땅하지만.[6] 반대로 질적 자료의 경우, 명목(nominal) 수준의 측정 자료는 당구공 3개가 모여있는 그림으로, 서열(ordinal) 수준의 측정 자료는 점점 길어지는 막대그래프 모양의 그림으로 나타난다.[7] 변수 계산이나 결측값 정의 등의 기능을 쓰려면 변수명이 짧아야 한다.[8] 실제로 아예 이가(二價)형으로 코딩할 일은 의외로 많지 않다. 점차 성별에서도 '기타' 나 '밝히고 싶지 않음' 보기를 두는 경우가 많아지는 추세이고, 군필여부를 조사한다 해도 '군필' 과 '미필' 외에 공익이나 의가사 전역자까지 고려해야 하며, 결혼여부를 조사할 때에도 '기혼' 과 '미혼' 외에 별거, 동거, 사실혼, 사별 등에 해당하는 보기를 넣어줄 필요가 있다.[9] 사실 본격적으로 SPSS를 쓰는 '통계분석 경력자' 들은 90% 이상이 다 이렇게 쓴다. 실무에서 SPSS를 사용할 경우에도 당연히 명령문으로 작업할 것이 기대되거나 요구되며, 명령문을 작성하는 방법을 모른다고 했다간 매우 높은 확률로 갈굼을 먹게 된다. 문제는 어지간히 최상위권 대학(원)이 아니라면 명령문 작성방법을 사회통계 시간에 전혀 가르치지 않는다는 것. 결과적으로 산학연결이 약해지게 되고, 석사 뽑아봤자 일 못한다는 볼멘소리만 나오게 된다.[10] 단, 결과가 이렇게 나오려면 '선택하지 않은 케이스 필터' 에 체크가 되어 있어야 하며, 그 외의 기능으로 선택한 케이스만 새 데이터 파일로 뽑아내거나 혹은 선택하지 않은 케이스를 전부 삭제하는 것도 가능하다.[11] 엑셀에서의 =AVERAGE(G1,G3,G5) 같은 수식입력과 매우 유사하다.[12] 이때의 이름은 '문항3_R' 같은 식으로 역코딩 변수임을 알아보기 쉽도록 정의하는 것이 좋다.[13] 단, 사분위수가 지원되기 때문에 이상점(outlier)의 빈도도 당연히 지원될 거라고 생각할 수 있는데, 이상점은 빈도분석에서 아무리 찾아도 나오지 않는다. 이상점 탐지를 원한다면 '분석' → '기술통계량' → '탐색' 으로 들어가서 '통계량' 버튼을 클릭하고 '이상점' 체크박스를 찍어줘야 한다.[14] 특별한 야외 레저활동 경험이 없는 사람들은 직전의 질문 문항에서 이미 필터링되었다고 가정한다.[15] SPSS로 빅데이터 분석을 할 수는 있겠지만 이 쯤되면 본인의 연구 목적을 잘 고려해봐야 한다. SPSS는 진입장벽이 낮다는 장점을 극대화하는 대신에 불러들일 수 있는 데이터 크기나 연산속도, 프로그래밍의 자유도를 포기한 프로그램이기 때문이다. 최악의 경우 빅데이터를 불러들였는데 컴퓨터가 멈추는 뻑 가는 경우도 생길 수 있다.[16] 이 프로그램으로 실기시험을 본다. SAS나 MINITAB으로도 응시할 수 있지만 이들은 SPSS보다도 접근성이 낮고 깔려있는 시험장도 없다시피해서 거의 대부분 SPSS로 응시한다.