符号検定(ペアになった2標本)

Fortranによるサンプルソースコード : 使用ルーチン名:g08aaf

Keyword: ノンパラメトリック, Sign Test, 検定

概要

本サンプルは符号検定 (Sign Test) を行うFortranによるサンプルプログラムです。 本サンプルは以下に示される2つの関連した(ペアの)標本を分析対象とし、検定統計量と P値 を算出します。

符号検定のデータ 

※本サンプルはnAG Fortranライブラリに含まれるルーチン g08aaf() のExampleコードです。本サンプル及びルーチンの詳細情報は g08aaf のマニュアルページをご参照ください。
ご相談やお問い合わせはこちらまで

入力データ

(本ルーチンの詳細はg08aaf のマニュアルページを参照)
1
2
3
4
5
6

このデータをダウンロード
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 のマニュアルページを参照)
1
2
3
4
5
6
7
8
9
10
11
12

この出力例をダウンロード
 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ライブラリ」のルーチンを呼び出します。
サンプルのコンパイル及び実行方法

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57

このソースコードをダウンロード
    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


関連情報
© 日本ニューメリカルアルゴリズムズグループ株式会社 2025
Privacy Policy  /  Trademarks