이원 분산 분석 후 사후 검정: JMP에서 Bonferroni 보정을 적용하는 방법현재 저는 이원 분산 분석(그룹 × 시간)을 사용하여 다중 그룹 데이터를 분석하고 있는데, JMP에서 본페로니 방법을 이용한 사후 검정을 수행하는 방법을 알고 싶습니다.
일반적으로 저는 다중 비교에 Tukey의 HSD를 사용하지만, Bonferroni 보정 비교를 사용한 결과도 보고해야 합니다.
JMP 도움말 문서를 확인해 보니 일원 분산 분석에서 여러 비교 방법(Tukey, Dunnett 등)에 대한 설명이 나와 있었습니다.
하지만, 특히 "최소제곱평균" 플랫폼에서 이원 분산분석 후 본페로니 보정을 적용하는 방법에 대한 명확한 설명을 찾을 수 없었습니다.
다음 사항에 대해 조언해 주시겠습니까?
상호작용이 유의미한 경우, 이원 분산 분석(모델 적합) 후 본페로니 보정을 적용하여 JMP에서 단순 효과 비교를 수행하는 올바른 절차는 무엇입니까?
비모수적 설명에서 본페로니 보정은 때때로 "각 t-검정 p-값에 비교 횟수를 곱하는 것"으로 설명됩니다.
이러한 해석 방식이 JMP에서도 허용되는 것인가요, 아니면 본페로니 보정을 위한 권장되는 내장 방법이 있나요?
어떤 조언이라도 주시면 대단히 감사하겠습니다.
매우 감사합니다.
진심으로 감사드립니다.
기초 데이터 분석 및 모델링제목: 이원 분산 분석 후 사후 검정: JMP에서 Bonferroni 보정을 적용하는 방법안녕하세요 @LossMarmot707님 : 네, "각 t-검정 p값에 비교 횟수를 곱하는 것"은 사용하는 소프트웨어와 관계없이 본페로니 보정과 동일한 방법입니다. 하지만 상호작용이 있는 상황에서 단순 효과를 비교하려는 이유가 무엇인가요? 이는 매우 오해의 소지가 있을 수 있습니다. 예를 들어, 각 시점에서 두 그룹 간에 큰 차이가 있을 수 있지만, 여러 시점을 평균냈을 때는 그 차이가 매우 작을 수 있습니다.
수정: 또는 본페로니 보정을 적용하는 또 다른 방법은 "모델 사양" 옆의 빨간색 삼각형에서 알파 값을 (k가 비교 횟수인) 알파/k로 변경한 다음 스튜던트 t 검정 구간을 사용하는 것입니다.
제목: 이원 분산 분석 후 사후 검정: JMP에서 Bonferroni 보정을 적용하는 방법댓글 감사합니다.
저는 본페로니 보정을 다중 비교를 수행할 때 제1종 오류를 제어하기 위한 표준적인 접근 방식으로 이해하고 있습니다.
상호작용이 유의미한 경우에도 주효과만 해석하면 전체적인 패턴을 잘못 이해할 수 있습니다. 따라서 일반적으로 각 시점이나 농도 수준별로 효과를 개별적으로 분석하는 것이 좋습니다(즉, 단순 효과를 비교하는 것).
상호작용이 존재한다는 것은 다음을 의미합니다.
“한 요인의 영향은 다른 요인의 수준에 따라 달라진다.”
즉, 전체 평균만 살펴보면 데이터의 중요한 패턴을 놓칠 수 있다는 뜻입니다.
따라서 본 분석에서는 이러한 패턴을 명확히 하기 위해 이원 분산 분석 후 사후 비교를 통해 각 조건 내 그룹 간의 차이를 조사했습니다.
또한, 제가 원래 질문했던 내용은 통계 소프트웨어 JMP를 사용하여 본페로니 보정을 적용한 사후 검정을 수행하는 방법에 관한 것이었습니다.
그렇긴 하지만, 말씀하신 대로 알파 값을 α/k로 조정하고 스튜던트 t 검정 구간을 사용하는 것이 본페로니 보정을 구현하는 편리한 대안이 될 수 있을 것 같습니다.
제목: 이원 분산 분석 후 사후 검정: JMP에서 Bonferroni 보정을 적용하는 방법교차항에 대한 빨간색 삼각형 메뉴의 [테스트 슬라이스] 옵션을 사용하여 "단순 효과 테스트"를 수행할 수 있으며, [결합 데이터 테이블 만들기] 를 통해 p값을 데이터 테이블로 출력할 수 있습니다.
(1) [분석] > [모델 적합]을 선택합니다.
(2) Y 변수를 설정하고 2인자 상호작용(예: "A, B 및 A*B")을 설정합니다.
기본 설정에서는 오른쪽에 레버리지 플롯("A", "B" 및 "A*B")이 표시됩니다.
(3) "A*B"의 빨간색 삼각형 메뉴를 클릭하고 [테스트 슬라이스]를 선택합니다.

F 비율과 "단순 효과 검정"의 p값을 확인할 수 있습니다. 하지만 이러한 p값은 다중 비교에 대한 보정이 되어 있지 않습니다.
(4) 단순 효과 테스트를 위한 테이블을 마우스 오른쪽 버튼으로 클릭한 후 [통합 데이터 테이블 생성]을 선택합니다.

이제 JMP 데이터 테이블에서 테스트 결과를 확인할 수 있습니다.
(5) 관심 없는 행을 삭제하고 관심 있는 행만 남겨둡니다.
(6) "Prob>F" 열 헤더를 마우스 오른쪽 버튼으로 클릭하고 [새 수식 열] > [수식...]을 선택합니다. 수식 편집기 창이 나타납니다.
(7) 다음 수식을 입력하세요.

Min(:"Prob > F"n * N Row(), 1);
[확인]을 클릭하여 수식을 적용하고 창을 닫으십시오.
(8) "Adj. Prob > F"와 같이 열 이름을 변경합니다.
(9) [편집] > [저널] 을 선택합니다. 이제 Bonferroni 조정 p값 표를 만들 수 있습니다.

추신
개인적으로 (그리고 강력하게) "p값만 계산하는 것"이나 "p값이 전부"라는 철학을 권장하지 않습니다. 두 요인 간의 상호작용을 시각화하는 데 더 유용한 그래프를 만들 수 있습니다.
(A) 위 2번 항목 이후, 상단 윤곽선의 빨간색 삼각형을 클릭하고 [요인 프로파일링] > [상호작용 플롯]을 선택합니다. 상호작용 플롯을 볼 수 있습니다.

(B) 위 2번 단계를 완료한 후, 상단 윤곽선의 빨간색 삼각형을 클릭하고 [요인 프로파일링] > [프로파일러]를 선택합니다. 예측 프로파일러에서 [상호작용 중첩]을 선택합니다. 이 그래프는 요인이 두 개뿐일 때의 상호작용 그래프와 동일합니다. 하지만 예측 프로파일러는 상호작용 기능을 제공하므로 두 개 이상의 요인을 상호작용적으로 확인할 수 있습니다.

(C) 그래프 작성기를 이용하면 더 많은 그래프를 만들 수 있습니다.

또한, 다중 비교 보정을 정말로 원한다면 데이터를 수집하기 전에 어떤 대비 검정을 할 것인지 명확히 해야 한다고 생각합니다. 데이터를 확인한 후에 대비 검정을 선택하면 다중 비교 보정이 제대로 되지 않을 것입니다.
제목: 이원 분산 분석 후 사후 검정: JMP에서 Bonferroni 보정을 적용하는 방법테스트 슬라이스 절차 수행 방법에 대한 자세한 설명에 진심으로 감사드립니다.
명확한 안내에 진심으로 감사드립니다. 제공해주신 절차에 따라 분석을 진행하고 있습니다.
현재 진행 중인 분석과 관련하여 추가 질문을 드리고 싶습니다.
현재 저는 JMP를 이용하여 약물 투여 연구에서 얻은 동물 실험 데이터(혈압, 맥박수 등)를 분석하고 있습니다.
측정은 매주 진행되며, 저는 20주간의 데이터를 분석하고 있습니다.
분석을 위해,
저는 투여된 약물의 종류(그룹)와 측정 주차를 요인으로 하는 이원 분산 분석(two-way ANOVA)을 수행하고 있습니다.
집단 간에 유의미한 차이가 감지될 경우, 본페로니 사후 검정(Test Slice를 사용한 단순 효과 검정)을 실시하고 싶습니다.
하지만 저는 이원 분산 분석 자체는 실행할 수 있지만,
Test Slice를 사용한 주간 그룹 비교 결과가 예상대로 나타나지 않아 사후 분석을 수행할 수 없습니다.
특히,
JMP는 분석 창에서 각 처리군에 대해 Y축에 측정값, X축에 측정 주차를 나타내는 그래프를 표시하지 않습니다.
그리고 저는 이것이 문제의 근본 원인일 수 있다고 생각합니다.
가능하다면, 어떤 조언이라도 주시면 정말 감사하겠습니다.
어떤 잠재적 원인을 고려해야 할까요? 또는 어떤 설정을 확인해야 할까요?
이 상황을 해결하기 위해서입니다.
도와주셔서 감사합니다.
제목: 이원 분산 분석 후 사후 검정: JMP에서 Bonferroni 보정을 적용하는 방법저는 두 가지 주요 고정 효과를 각각 주(Week) 와 그룹(Group) 으로, 두 요인 간의 상호작용 항을 주*그룹(Week*Group) 으로 나타냅니다. 동물에 대한 랜덤 효과도 포함하시는 것 같은데, 이를 동물 ID(Animal ID) 로 표시하겠습니다.
Y = Week Group Week*Group Animal ID&Random Effect
모델에 랜덤 효과를 포함하면 기본 강조 설정이 최소 보고서로 변경됩니다. 이 경우 효과 세부 정보 개요를 열어야 합니다. 그 안에 그룹*주 개요가 있습니다.

또는 시작 대화 상자에서 효과 활용률을 선택 해야 합니다.

본인의 데이터를 사용하기 전에, 다음 가상 데이터를 사용하여 분석을 먼저 수행해 보세요.
(1) 파일 > 새로 만들기 > JSL 스크립트를 선택합니다. 스크립트 편집기가 열립니다.
(2) 다음 코드를 스크립트 편집기에 복사하여 붙여넣으세요.
Names Default To Here(1);
Random Reset(1111111);
n group = 2;
n animals per group = 10;
n week = 20;
data = [];
id = 0;
For(group = 1, group <= n group, group++,
For(i=1, i <= n animals per group, i++,
id++;
f = Random Normal();
For(week = 1, week <= n week, week++,
y = week + group + f + Random Normal();
If(week>=10 & group==1, y += 10 - week);
data|/=group||id||week||y;
);
);
);
dt = As Table(data, <
<COLUMN names=""></COLUMN>
<P>(3) 스크립트 편집기에서 <STRONG>편집</STRONG> > <STRONG>스크립트 실행을</STRONG> 선택합니다.<BR /> (4) 위의 분석을 수행하고 원하는 것인지 확인하십시오.</P> <BR /> <P>그룹 수가 두 개인 경우, <STRONG>다중 비교</STRONG> 옵션을 사용하여 단순 효과 검정을 수행할 수 있습니다.</P> <P>(1) Select the red triangle icon and select <STRONG>다중 비교</STRONG>.<BR />(2) Select <STRONG>그룹*주</STRONG> in <STRONG>효과를 선택하세요</STRONG>.</P> <P>(3) <STRONG>최소제곱평균도 표시를</STRONG> 확인합니다.<BR /> (4) <STRONG>상호작용 플롯 생성을</STRONG> 확인합니다.<BR /> (5) <STRONG>오버레이용 용어 선택</STRONG> 에서 <STRONG>그룹을</STRONG> 선택합니다.<BR /> (6) <STRONG>확인을</STRONG> 클릭합니다. 신뢰 구간이 포함된 상호 작용 플롯이 표시됩니다.</P> <P><SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="yusuke_ono_2-1779454539349.png" style="width: 400px;"><SPAN class="lia-inline-image-display-wrapper" image-alt="yusuke_ono_2-1779454539349.png" style="width: 400px;"><span class="lia-inline-image-display-wrapper" image-alt="yusuke_ono_2-1779454539349.png" style="width: 400px;"><img src="https://us.v-cdn.net/6038925/uploads/images/104538i41B986728AA6396C/yusuke_ono_2-1779454539349.png" role="button" title="yusuke_ono_2-1779454539349.png" alt="yusuke_ono_2-1779454539349.png" /></span></SPAN></SPAN></P> <BR /> <P>(7) 다시 빨간색 삼각형 아이콘을 선택하고 <STRONG>다중 압축을</STRONG> 선택합니다.<BR /> (8) <STRONG>추정 유형</STRONG> 에서 <STRONG>최소제곱평균 슬라이스 추정치를</STRONG> 선택합니다.<BR /> (9) <STRONG>슬라이스 옵션</STRONG> 에서 <STRONG>슬라이스 용어 지정을</STRONG> 선택합니다.<BR /> (10) <STRONG>슬라이스 조건을 선택하세요</STRONG> 에서 <STRONG>주를</STRONG> 선택합니다.<BR /> (11) (본페로니 보정을 하려면) <STRONG>모든 쌍별 비교 - 학생의</STRONG> .<BR /> (12) <STRONG>좋아요</STRONG> 를 클릭하세요. 모든 결과가 다중성을 고려하여 조정되지 않았다는 점에 유의하세요.<BR /> (13) <STRONG>모든 쌍별 차이</STRONG> 테이블 내부를 마우스 오른쪽 버튼으로 클릭하고 <STRONG>결합 데이터 테이블 만들기를</STRONG> 선택합니다.</P> <P>(14) Bonferroni 조정 p값과 신뢰구간을 계산합니다.</P> <BR /> <CODE class=" language-jsl">Min( :"Prob>|t|"n * N Row(), 1 )
:Difference - :Std Error * t Quantile( 1 - 0.05 / (2 * N Row()), :DF )
:Difference + :Std Error * t Quantile( 1 - 0.05 / (2 * N Row()), :DF )
2개의 고정 효과인 주효과를 주 및 그룹 으로 하고, 그 2인자간 교호작용 항을 주*그룹 으로 합니다. 아마도 이러한 고정 효과뿐만 아니라 동물의 각 개체가 가진 변량 효과도 모델에 포함하고 있다고 생각합니다. 이 변량 효과를, 동물 ID 로 합니다. 즉, 모델의 효과로 다음 네 가지가 포함되어 있다고 가정합니다.
Y = Week Group Week*Group Animal ID&Random Effect
모델 피팅에서 변량 효과를 포함하는 경우 기본 강조점이 최소 보고서 입니다. 이 경우 보고서 효과의 상세 개요를 열어야 합니다. 열면 그 중 그룹 * 주 개요가 있습니다.

혹은, 기동 다이얼로그에 있어서, 중요성 을 효과적으로 비교해 주세요.

자신의 데이터를 시도하기 전에 먼저 깨끗한 의사 데이터로 잘 작동하는지 확인하는 것이 좋습니다.
(1) 파일 > 새로 만들기 > JSL 스크립트 를 선택합니다. 스크립트 편집기가 열립니다.
(2) 다음 코드를 스크립트 편집기에 복사합니다.
Names Default To Here(1);
Random Reset(1111111);
n group = 2;
n animals per group = 10;
n week = 20;
data = [];
id = 0;
For(group = 1, group <= n group, group++,
For(i=1, i <= n animals per group, i++,
id++;
f = Random Normal();
For(week = 1, week <= n week, week++,
y = week + group + f + Random Normal();
If(week>=10 & group==1, y += 10 - week);
data|/=group||id||week||y;
);
);
);
dt = As Table(data, <
<COLUMN names=""></COLUMN> <P>(3) 스크립트 편집기에서 <STRONG>편집</STRONG> > <STRONG>스크립트 실행</STRONG> 을 선택합니다.</P> <P>(4) 위의 분석을 시도하고 원하는 결과를 얻을 수 있는지 확인하십시오.</P> <BR /> <P><BR />두 그룹의 경우 <STRONG>다중 비교</STRONG> 옵션을 사용할 수 있습니다.</P> <P>(1) 보고서의 시작 부분에 있는 빨간색 삼각형 버튼을 클릭하고 <STRONG>다중 비교</STRONG> 를 선택합니다.<BR /> (2) 불러온 창의 <STRONG>효과 선택</STRONG> 에서 <STRONG>그룹*주</STRONG> 를 선택합니다.</P> <P>(3) <STRONG>최소 제곱 평균 플롯의 표시</STRONG> 를 확인합니다.<BR /> (4) <STRONG>교호작용 플롯 작성</STRONG> 을 체크합니다.<BR /> (5) <STRONG>중첩 할 모델 항을 선택</STRONG> 하고 <STRONG>그룹</STRONG> 을 선택합니다.<BR /> (6) <STRONG>좋아요</STRONG> 를 클릭하면 신뢰 구간도 그려진 교호작용 플롯이 생성됩니다. "</P> <P><SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="yusuke_ono_5-1779456371304.png" style="width: 400px;"><SPAN class="lia-inline-image-display-wrapper" image-alt="yusuke_ono_5-1779456371304.png" style="width: 400px;"><span class="lia-inline-image-display-wrapper" image-alt="yusuke_ono_5-1779456371304.png" style="width: 400px;"><img src="https://us.v-cdn.net/6038925/uploads/images/104542i97FD4CA2DD1DB016/yusuke_ono_5-1779456371304.png" role="button" title="yusuke_ono_5-1779456371304.png" alt="yusuke_ono_5-1779456371304.png" /></span></SPAN></SPAN></P> <BR /> <BR /> <P>(7) 다시 보고서 시작의 빨간색 삼각형 버튼에서 <STRONG>다중 비교</STRONG> 를 선택합니다.<BR /> (8) <STRONG>추정값 유형</STRONG> 에서 <STRONG>최소 제곱 평균 윤곽 추정값</STRONG> 을 선택합니다.<BR /> (9) <STRONG>둥근 자르기 옵션</STRONG> 에서 <STRONG>둥근 자르기 항을 지정</STRONG> 을 선택합니다.<BR /> (10) <STRONG>윤절할 항의 선택</STRONG> 에서 <STRONG>주</STRONG> 를 선택합니다.<BR /> (11) (나중에 Bonferroni 조정을 적용하는 경우) <STRONG>각 쌍 비교 - Student t- 검정</STRONG> 을 선택합니다.<BR /> (12) <STRONG>좋아요</STRONG> 를 클릭합니다. 이 결과는 다중 조정이 이루어지지 않았음을 유의하십시오.<BR /> (13) <STRONG>모든 쌍의 평균 차이</STRONG> 표에서 마우스 오른쪽 버튼을 클릭하고 <STRONG>연결된 데이터 테이블 만들기</STRONG> 를 선택합니다 <STRONG>.</STRONG></P> <P>(14) Bonferroni 조정한 p값과 신뢰 구간을 구하는 계산식을 작성해 주십시오.</P> <CODE class="language-jsl">Min( :"Prob>|t|"n * N Row(), 1 )
:Difference - :Std Error * t Quantile( 1 - 0.05 / (2 * N Row()), :DF )
:Difference + :Std Error * t Quantile( 1 - 0.05 / (2 * N Row()), :DF )
<이하는 일본어만으로의 설명>
20시점도 있는 경우, 그 20시점에서 윤절을 하면(군이 2군이고, 그 2군에서의 차이를 구하는 것만이라면) 조정한 p값은 원래의 p값을 20배 하게 됩니다. 만약 데이터를 취하기 전에 다중 조정을 선언한다면 고정 순서법(fixed order method) 등의 방법에 의해서도 다중성을 조정할 수 있습니다.
20 시점도 있는 경우에는 시점의 효과를 범주형 데이터가 아닌 연속 변수로 모델링할 수도 있습니다.
요전날의 대답에서도 말했습니다만, 개인적으로는 p값을 요구해 끝이 아니고, 그래프 빌더등에서 전체의 경향을 보는 것을 강하게 추천하겠습니다. 위의 스크립트를 실행하면 주를 가로축, 측정값을 세로축으로 하여, 그룹별로 색으로 구분한 각 개체마다의 꺾은선이 그려집니다.
제목: 이원 분산 분석 후 사후 검정: JMP에서 Bonferroni 보정을 적용하는 방법지금 생각해보니, 혹시 동물 ID를 고정 효과로 설정하셨거나 방법 으로 EMS(기존 방식)를 선택하신 건 아닌지 걱정됩니다. 만약 그렇다면, 동물 ID 는 고정 효과로 처리됩니다.
동물 탐지 에 랜덤 효과를 적용하고 응급 의료 서비스(기존 방식)를 설정하더라도 많은 결과는 고정 효과 모델을 기반으로 합니다. 기대 평균 제곱 , 분산 성분 추정치 , 검정 분모 합성 및 랜덤 효과 관련 검정만 혼합 효과 모델을 기반으로 합니다.
당신이 하려는 일이 무엇인지는 잘 모르겠지만, 만약 정말로 동물 인식을 고정 효과로 처리하고 싶다면, 동물 ID를 그룹 (예: 동물 ID[그룹] )에서 중첩 효과로 설정해야 합니다.
만약 각 그룹 내에서 동물 ID가 아래와 같이 번호가 매겨져 있고, 그룹 1 의 동물 ID=1 이 그룹 2 의 동물 ID=1 과 다른 경우, (REML 추정에서 동물 인식을 랜덤 효과로 처리하는 경우에도) 항상 동물 인식을 그룹 에서 파생된 중첩 효과로 설정해야 합니다(즉, 동물 ID[그룹]을 설정해야 합니다).
그룹 동물 ID
1 1
1 2
1 3
1 4
1 5
2 1
2 2
2 3
2 4
2 5
데이터가 아래와 같고 REML 추정을 수행하는 경우, 중첩 효과를 지정할 필요가 없습니다.
(중첩 효과로 동물 인식을 지정해도 괜찮습니다.)
그룹 동물 ID
1 1
1 2
1 3
1 4
1 5
2 6
2 7
2 8
2 9
2 10
위 모델( Y = Group Week Group*Week Animal ID&Random Effect, 명목형 그룹 및 주) 은 여러 통계 모델 중 하나일 뿐이라는 점에 유의하십시오. 저는 단지 JMP 소프트웨어에서 모델을 설정하고 실행하는 방법을 보여드렸을 뿐이며, 이 모델의 타당성에 대해서는 고려하지 않았습니다.
어쨌든, 제 생각에는 첫 번째 단계는 줄거리를 그리는 것입니다.

지금 조금 떠올랐습니다만, 동물 식별 을 고정 효과로서 취급하고 있는지, 혹은, 수법을 EMS(종래) 로 하고 있지 않을까 생각했습니다. 이 경우, 동물 식별 은 고정 효과로 취급됩니다.
동물 식별 을 변량 효과로 설정해도, EMS(기존) 로 하면, 많은 결과는 동물 식별 을 고정 효과로서 취급한 고정 효과 모델에 근거하고 있습니다. 기대 평균 제곱 , 분산 성분 추정치 , F 검정의 분모 , 변량 효과를 고려한 검정 만이, 동물 식별 을 변량 효과로서 취급한 혼합 효과 모델에 근거합니다.
분석하고 싶은 것은 아니라고 생각합니다만, 만일, 정말로 동물 식별 을 고정 효과로서 분석을 하고 싶다면, 동물 식별 을 그룹 으로부터 분기한 효과 「動物 ID[그룹] 」로서 설정할 필요가 있습니다.
만약, 이하와 같이 동물 식별 이 각 그룹에서 번호가 매겨져 있고, 또, 제1군의 동물 ID=1 이, 제2군의 동물 ID=1 과 다른 개체인 경우에는, 그 경우에는 동물 식별 을 분기해 효과(즉, 동물 ID[그룹] )로 하지 않으면 안됩니다. (이것은 동물 식별 을 변량 효과로 취급하여 REML 추정하는 경우에도 그렇게 설정해야 합니다.)
그룹 동물 ID
1 1
1 2
1 3
1 4
1 5
2 1
2 2
2 3
2 4
2 5
데이터가 다음과 같고 Animal ID가 변량 효과로 설정되어 있고 REML 추정을 할 경우에는 동물 식별 을 분기 효과로 지정할 필요가 없습니다. (별도로 분기 효과로 지정해도 상관없습니다. 데이터가 다음과 같은 경우에서 REML 추정을 사용하는 경우에는 어느 쪽이든 상관 없습니다.)
그룹 동물 ID
1 1
1 2
1 3
1 4
1 5
2 6
2 7
2 8
2 9
2 10
덧붙여 Y = Group Week Group*Week Animal ID&변량 효과 로 그룹 이나 주 를 명의 척도로서 취급하는 모델은, 그 밖에도 여러가지라고 생각되는 모델의 하나에 지나지 않고, 위의 것은 소프트웨어상의 설정 방법이나 조작 방법만을 말하고 있는 것만으로, 이 모델이 타당한 것인가는 생각하고 있지 않습니다.
어쨌든, 먼저 그래프를 그려 보는 것이 첫 단계라고 생각합니다.
