본문 바로가기
Mplus

[Mplus] 기본 명령어 및 기본 syntax - 1

by ssanalyst 2021. 4. 10.
728x90

안녕하세요.

 

이번 글에서는 Mplus 기본 명령어에 대해 알아보겠습니다.

 

Mplus는 SPSS와 달리 명령어를 입력하여 사용해야 합니다.

 

클릭 방식이 아니라 처음 사용하는 사람은 분석하는데 시간이 조금 걸립니다.

 

하지만 명령어가 많지않고 복잡하지 않아 금방 익힐 수 있습니다.

 

먼저 Mplus를 사용하기에 앞서 알아두면 좋은 점들을 이야기 하겠습니다.

 

Mplus는 영문 대문자와 소문자를 구별하지 않습니다.

 

Mplus에서 LJ2와 lj2는 같은 문자입니다.

 

그리고 모든 명령어 줄은 공백, 영문 글자 및 부호 등을 포함하여 90개를 넘을 수 없습니다.

 

한 줄에 90개 이상의 입력이 있으면 90개를 넘어서는 입력부터는 Mplus가 에러를 표출합니다.

 

마지막으로 Mplus에서는 명령어 줄 마지막에 세미콜론( ; )을 붙여주어 각 명령어 줄을 구분합니다.

 

그럼 이제 명령어에 대해 알아보겠습니다.

 

이번에 알아볼 명령어는 5개로 TITLE, DATA, VARIABLE, MODEL, ANALYSIS 입니다.

 

 

TITLE

TITLE은 명령문 이름 그대로 input 파일의 제목을 작성하는 명령어입니다.

 

필수 명령문은 아니지만 작성하는 input 파일이 어떤 분석을 하고 왜 이 분석을 하는지 적어두면 추후에 명령문의 목적을 알 수 있어 편리합니다.

 

DATA

DATA는 필수 명령어로 사용할 데이터의 경로와 이름을 작성하면 됩니다.

 

필수 명령어로서 input을 작성할 때 무조건 작성해줘야 합니다.

 

Mplus에서 사용할 데이터 형태와 DATA 명령어를 간편하게 작성할 수 있게 해주는 방법은 아래 글을 참고해주시기 바랍니다.

 

 

[Mplus] 사용 데이터 준비(엑셀) / M-plus 통계 프로그램

안녕하세요. Mplus syntax에 대해 알아보기 전에 Mplus에서 사용할 수 있는 데이터/자료 형태에 대해 알아보겠습니다. Mplus를 사용할 때 csv와 dat 확장자를 가진 자료를 주로 씁니다. 저는 엑셀을 자주

funnystatistics.tistory.com

자료는 아래 명령어처럼 작성하여 불러올 수 있습니다.

 

DATA: FILE IS data.csv;

 

FILE IS 다음의 'data'는 자료의 이름이고 '.csv'는 자료의 확장자입니다.

 

이렇게 자료의 확장자까지 입력해주어야 합니다.

 

VARIABLE

VARIABLE은 필수 명령어로서 불러들인 자료의 변수명을 지정해주는 명령어입니다.

 

위 글을 보시면 Mplus에 사용할 자료는 변수명이 없는 오직 숫자로만 구성된 자료를 사용해야 합니다.

 

그렇기에 Mplus에게 변수명을 알려주어야 합니다.

 

주의해야할 사항은 변수명을 원래 자료의 변수 순서에 맞게 입력해야 한다는 것입니다.

 

원자료에서는 변수 순서가 M1, M2, Y1, Y2로 구성되어 있고 M2와 Y2를 이용하여 회귀분석을 하고자 하는데

 

변수 순서를 M1, M2, Y2, Y1으로 입력해버리면 분석에는 M2, Y2가 아닌 M2와 Y1이 사용되기에 주의를 기울여야 합니다.

 

또한 VARIABLE 명령어는 하위 명령어를 가지고 있습니다.

 

하위 명령어는 USEVARIABLES CATEGORICAL 입니다.

 

USEVARIABLES는 불러들인 자료에서 일부 변수만 사용할 경우 해당 변수를 지정해주는 하위 명령어입니다.

 

불러들인 자료에 M1, M2, Y1, Y2 변수가 있는데 분석에 M2와 Y1만 사용한다면 USEVARIABLS 명령어를 사용하여 Mplus에 M2와 Y1 변수만을 사용한다고 알려줄 수 있습니다.

 

USEVARIABLES를 작성하지 않으면 Mplus는 모든 변수를 사용하는 것으로 인지합니다.

 

CATEGORICAL은 Mplus에게 범주형 변수를 알려주는 명령어입니다.

 

기본적으로 Mplus는 변수를 연속형으로 인식합니다.

 

그렇기에 자료에 범주형 변수가 있으면 CATEGORICAL로 해당 변수가 범주형이라는 것을 알려줘야 합니다.

 

VARIVABLE 명령어 작성법을 예를 들어 보여드리겠습니다.

 

자료가 A1, A2, B1, B2, C1, C2의 6개의 변수를 가지고 이 중 A1, A2, B1, B2, C2 만을 분석에 사용하고 C2가 범주형 변수라면 아래와 같이 명령어를 작성할 수 있습니다.

 

VARIABLES: NAMES ARE A1, A2, B1, B2, C1, C2;

                         USEVARIABLES ARE A1, A2, B1, B2, C2;

                         CATEGORICAL ARE C2;

 

그리고 변수명을 ' - '을 사용하여 빠르고 간편하게 작성할 수 있습니다.

 

A1, A2, A3, A4, A5, A6, B1, B2, B3, B4, B5, B6처럼 앞에 알파벳이 공통되면서 연속적인 숫자로 나타나는 변수명의 경우

 

NAMES ARE A1-A6, B1-B6 로 간편하게 작성할 수 있습니다. A1-A6은 변수가 A1부터 A6까지 있다는 것을 의미합니다.

 

 

MODEL

MODEL은 필수 명령어로서 사용자가 추정하거나 분석하고자 하는 모형을 설정합니다.

 

MODEL에서 모형을 설정할 때 사용하는 옵션은 BY, ON, WITH 세 가지가 있습니다.

 

BY 는 측정모형에 사용하며 ON은 회귀 또는 경로모형, WITH는 공분산을 추정할 때 사용합니다.

 

D1, D2 , D3 세 개의 문항을 이용하여 우울 요인(DEPRESSION)을 측정할 경우

 

DEPRESSION BY D1, D2, D3; 로 모형을 설정해주면 됩니다.

 

불안(A1), 우울(D1)이 긍정적 사고(PT)에 미치는 영향을 회귀분석을 이용하여 분석하고자 한다면

 

PT ON A1, D1; 로 모형을 설정해주면 됩니다.

 

BY와 ON 명령어를 보면 아시겠지만 측정하고자 하는 요인이나 종속변수를 BY와 ON 왼편에 입력해주셔야 합니다.

 

WITH는 공분산이나 상관계수를 추정할 때 사용하는 옵션으로

 

D1 WITH D2; 혹은 D2 WITH D1; 으로 설정해주시면 됩니다.

 

WITH의 경우 변수의 위치 상관없이 위 두 명령어 모두 같은 결과를 반환해줍니다.

 

ANALYSIS

ANALYSIS는 설정한 모형을 어떤 방식으로 추정할지에 대해 설정하는 명령어입니다.

 

ANALYSIS에서는 모형 또는 분석의 종류(탐색적 요인분석, 구조방정식), 추정방법의 종류, 추정과정의 알고리즘의 종류와 수렴기준 등 기술적인 부분을 설정할 수 있습니다.

 

탐색적 요인분석을 사용하고 추정한다고 했을 시 아래와 같이 명령어를 작성할 수 있습니다. 

 

ANALYSIS: type = EFA 1 5; rotation = GEOMIN; estimator = WLSMV;

 

위 명령어에서 type은 분석의 종류를 설정하는 곳이고 rotation은 요인의 회전 방법, estimator는 추정방법을 지정하는 옵션입니다.


이제 실제 Mplus input 창에 입력된 명령어를 보고 어떻게 명령어를 입력하고 해당 input이 어떤 내용을 담고 있는지 살펴보겠습니다.

 

아래 그림은 Mplus DEMO를 이용하여 작성한 명령어입니다.

 

하나씩 살펴보도록 하겠습니다.

 

 

출처: 직접 작성

 

먼저 TITLE을 보면 해당 input이 Mplus 명령어 작성 예시를 위한 것임을 알 수 있습니다.

 

그리고 DATA를 보면 자료명은 example이고 csv 파일입니다.

 

VARIABLE을 보면 자료에 있는 변수는 총 12개이며 변수명은 y1, y2, y3, y4, y5, y6, x1, x2, x3, x4, x5, x6임을 알 수 있습니다.

 

분석에 변수 전체를 사용하지 않고 y1, x1, x5만 사용한다는 것을 알 수 있으며 범주형 변수는 없습니다.

 

모형 추정은 최대우도추정(ML)을 사용하고 모형은 회귀모형이고 y1이 종속변수임을 알 수 있습니다.

 

그리고 마지막으로 모든 명령어를 세미콜론( ; )으로 마무리한 것을 볼 수 있습니다.

 

여기까지 Mplus 기본 명령어를 알아보았습니다.

 

감사합니다 :)

728x90

댓글