Keyword: ノンパラメトリック, Sign Test, 検定
概要
本サンプルは符号検定 (Sign Test) を行うFortranによるサンプルプログラムです。 本サンプルは以下に示される2つの関連した(ペアの)標本を分析対象とし、検定統計量と P値 を算出します。
※本サンプルはnAG Fortranライブラリに含まれるルーチン g08aaf() のExampleコードです。本サンプル及びルーチンの詳細情報は g08aaf のマニュアルページをご参照ください。
ご相談やお問い合わせはこちらまで
入力データ
(本ルーチンの詳細はg08aaf のマニュアルページを参照)| このデータをダウンロード |
G08AAF Example Program Data 17 :: N 4.0 4.0 5.0 5.0 3.0 2.0 5.0 3.0 1.0 5.0 5.0 5.0 4.0 5.0 5.0 5.0 5.0 :: End of X 2.0 3.0 3.0 3.0 3.0 3.0 3.0 3.0 2.0 3.0 2.0 2.0 5.0 2.0 5.0 3.0 1.0 :: End of Y
- 1行目はタイトル行で読み飛ばされます。
- 2行目に標本のサイズ(n)を指定しています。
- 3〜4行目に一つ目の標本(x)を指定しています。
- 5〜6行目に二つ目の標本(y)を指定しています。
出力結果
(本ルーチンの詳細はg08aaf のマニュアルページを参照)| この出力例をダウンロード |
G08AAF Example Program Results
Sign test
Data values
4. 4. 5. 5. 3. 2. 5. 3. 1. 5. 5. 5. 4. 5. 5. 5. 5.
2. 3. 3. 3. 3. 3. 3. 3. 2. 3. 2. 2. 5. 2. 5. 3. 1.
Test statistic 3
Observations 14
Lower tail prob. 0.029
- 7行目〜8行目は読み込まれたデータがそのまま出力されています。
- 10行目は符号検定の統計量が出力されています。
- 11行目は観察数が出力されています。
- 12行目には下側確率 (lower tail probability) である P値 が出力されています。
ソースコード
(本ルーチンの詳細はg08aaf のマニュアルページを参照)
※本サンプルソースコードは科学技術・統計計算ライブラリである「nAG Fortranライブラリ」のルーチンを呼び出します。
サンプルのコンパイル及び実行方法
| このソースコードをダウンロード |
PROGRAM g08aafe
! G08AAF Example Program Text
! Mark 23 Release. nAG Copyright 2011.
! .. Use Statements ..
USE nag_library, ONLY : g08aaf, nag_wp
! .. Implicit None Statement ..
IMPLICIT NONE
! .. Parameters ..
INTEGER, PARAMETER :: nin = 5, nout = 6
! .. Local Scalars ..
REAL (KIND=nag_wp) :: p
INTEGER :: ifail, isgn, n, n1
! .. Local Arrays ..
REAL (KIND=nag_wp), ALLOCATABLE :: x(:), y(:)
! .. Executable Statements ..
WRITE (nout,*) 'G08AAF Example Program Results'
WRITE (nout,*)
! Skip heading in data file
READ (nin,*)
! Read in problem size
READ (nin,*) n
ALLOCATE (x(n),y(n))
! Read in data
READ (nin,*) x(1:n)
READ (nin,*) y(1:n)
! Display title
WRITE (nout,*) 'Sign test'
WRITE (nout,*)
! Display input data
WRITE (nout,*) 'Data values'
WRITE (nout,*)
WRITE (nout,99999) x(1:n)
WRITE (nout,99999) y(1:n)
! Perform the sign test
ifail = 0
CALL g08aaf(x,y,n,isgn,n1,p,ifail)
! Display results
WRITE (nout,*)
WRITE (nout,99998) 'Test statistic ', isgn
WRITE (nout,99998) 'Observations ', n1
WRITE (nout,99997) 'Lower tail prob.', p
99999 FORMAT (4X,20F3.0)
99998 FORMAT (1X,A,I5)
99997 FORMAT (1X,A,F6.3)
END PROGRAM g08aafe
