一変量時系列の標本自己相関関数

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

Keyword: 一変量時系列, 標本自己相関関数, ACF

概要

本サンプルは一変量時系列の標本自己相関関数の計算を行うFortranによるサンプルプログラムです。 本サンプルは以下に示される時系列データを分析し、標本自己相関係数、標本平均や標本分散を出力します。

自己相関のデータ 

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

入力データ

(本ルーチンの詳細はg13abf のマニュアルページを参照)
1
2
3
4
5
6
7
8
9
10
11
12

このデータをダウンロード
G13ABF Example Program Data
 50 10
   5.0  11.0  16.0  23.0  36.0
  58.0  29.0  20.0  10.0   8.0
   3.0   0.0   0.0   2.0  11.0
  27.0  47.0  63.0  60.0  39.0
  28.0  26.0  22.0  11.0  21.0
  40.0  78.0 122.0 103.0  73.0
  47.0  35.0  11.0   5.0  16.0
  34.0  70.0  81.0 111.0 101.0
  73.0  40.0  20.0  16.0   5.0
  11.0  22.0  40.0  60.0  80.9 

  • 1行目はタイトル行で読み飛ばされます。
  • 2行目に時系列データの数(nx=50)、自己相関が必要なラグの数(nk=10)を指定しています。
  • 3~12行目に時系列データ(x)を指定しています。

出力結果

(本ルーチンの詳細はg13abf のマニュアルページを参照)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

この出力例をダウンロード
 G13ABF Example Program Results

 The first 10 coefficients are required
 The input array has sample mean      37.4180
 The input array has sample variance    1002.0301
 The sample autocorrelation coefficients are

    Lag    Coeff      Lag    Coeff
      1    0.8004       2    0.4355
      3    0.0328       4   -0.2835
      5   -0.4505       6   -0.4242
      7   -0.2419       8    0.0550
      9    0.3783      10    0.5857

 The value of STAT is      92.1231

  • 3行目にラグの数(この場合は10個)の自己相関係数が必要であることが示されています。
  • 4行目に入力された時系列データの標本平均が出力されています。
  • 5行目に入力された時系列データの標本分散が出力されています。
  • 9~13行目にはラグと標本自己相関係数が出力されています。
  • 15行目には時系列の真の自己相関関数がゼロであるという仮説を検証するために使用される統計量の値が出力されています。

ソースコード

(本ルーチンの詳細はg13abf のマニュアルページを参照)

※本サンプルソースコードは科学技術・統計計算ライブラリである「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

このソースコードをダウンロード
    PROGRAM g13abfe

!      G13ABF Example Program Text

!      Mark 23 Release. nAG Copyright 2011.

!      .. Use Statements ..
       USE nag_library, ONLY : g13abf, nag_wp
!      .. Implicit None Statement ..
       IMPLICIT NONE
!      .. Parameters ..
       INTEGER, PARAMETER              :: nin = 5, nout = 6
!      .. Local Scalars ..
       REAL (KIND=nag_wp)              :: stat, xm, xv
       INTEGER                         :: i, ifail, nk, nx
!      .. Local Arrays ..
       REAL (KIND=nag_wp), ALLOCATABLE :: r(:), x(:)
!      .. Executable Statements ..
       WRITE (nout,*) 'G13ABF Example Program Results'
       WRITE (nout,*)

!      Skip heading in data file
       READ (nin,*)

!      Read in the problem size
       READ (nin,*) nx, nk

       ALLOCATE (x(nx),r(nk))

!      Read in data
       READ (nin,*) x(1:nx)

!      Compute autocorrelation
       ifail = 0
       CALL g13abf(x,nx,nk,xm,xv,r,stat,ifail)

!      Display results
       WRITE (nout,99999) 'The first ', nk, ' coefficients are required'
       WRITE (nout,99998) 'The input array has sample mean ', xm
       WRITE (nout,99998) 'The input array has sample variance ', xv
       WRITE (nout,*) 'The sample autocorrelation coefficients are'
       WRITE (nout,*)
       WRITE (nout,*) '   Lag    Coeff      Lag    Coeff'
       WRITE (nout,99997) (i,r(i),i=1,nk)
       WRITE (nout,*)
       WRITE (nout,99998) 'The value of STAT is ', stat

99999  FORMAT (1X,A,I2,A)
99998  FORMAT (1X,A,F12.4)
99997  FORMAT (1X,I6,F10.4,I8,F10.4)
    END PROGRAM g13abfe


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