C#による ダービン・ワトソン検定の統計量の計算

C#によるサンプルソースコード : 使用関数名:g02fc

ホーム > 製品 > nAG数値計算ライブラリ > C#向けnAGライブラリ > サンプルソースコード集 > ダービン・ワトソン検定の統計量の計算

Keyword: ダービン・ワトソン検定, 統計量, 有意確率

概要

本サンプルはダービン・ワトソン検定の統計量の計算を行うC#によるサンプルプログラムです。 本サンプルは以下に示される10個の残差についてダービン・ワトソン検定を行い、統計量と統計量の有意確率の下限、上限を出力します。

ダービン・ワトソン検定の統計量の計算のデータ 

※本サンプルはnAG Library for .NETに含まれる関数 g02fc() のExampleコードです。本サンプル及び関数の詳細情報は g02fc のマニュアルページをご参照ください。
ご相談やお問い合わせはこちらまで

入力データ

(本関数の詳細はg02fc のマニュアルページを参照)

このデータをダウンロード
g02fc Example Program Data
 2
3.735719 0.912755 0.683626 0.416693 1.9902
-0.444816 -1.283088 -3.666035 -0.426357 -1.918697 

  • 1行目はタイトル行で読み飛ばされます。
  • 2行目に回帰モデルの独立変数の数(ip)を指定しています。
  • 3から4行目には残差(res)を指定しています。

出力結果

(本関数の詳細はg02fc のマニュアルページを参照)

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

   Durbin-Watson statistic     0.9238 
   Lower and upper bound     0.0610    0.0060

  • 3行目にダービン・ワトソン統計量が出力されています。
  • 5行目に統計量の有意確率の下限と上限が出力されています。

ソースコード

(本関数の詳細はg02fc のマニュアルページを参照)

※本サンプルソースコードは .NET環境用の科学技術・統計計算ライブラリである「nAG Library for .NET」の関数を呼び出します。
サンプルのコンパイル及び実行方法


このソースコードをダウンロード
//      g02fc Example Program Text
//      C# version, nAG Copyright 2008
using System;
using NagLibrary;
using System.IO;
namespace NagDotNetExamples
{
  public class G02FCE
  {
    static bool defaultdata = true;
    static string datafile = "";
    static void Main(String[] args)
    {
      if (args.Length == 1)
      {
        defaultdata = false;
        datafile = args[0];
      }
      StartExample();
    }
    public static void StartExample()
    {
      try
      {
        DataReader sr = null;
        if (defaultdata)
        {
          sr = new DataReader("exampledata/g02fce.d");
        }
        else
        {
          sr = new DataReader(datafile);
        }
        const int n = 10;
        double d,   pdl,   pdu; int i,  ip;
        double[] res = new double[n];
        int ifail;
        Console.WriteLine("g02fc Example Program Results");
        //      Skip heading in data file
        sr.Reset();
        sr.Reset();
        ip = int.Parse(sr.Next());
        sr.Reset();
        for (i = 1; i <= n; i++)
        {
          res[i - 1] = double.Parse(sr.Next());
        }
        // 
        // 
        G02.g02fc(n, ip, res, out d, out pdl, out pdu, out ifail);
        // 
        if (ifail == 0)
        {
          Console.WriteLine(" ");
          Console.Write("  {0}{1,10:f4}", " Durbin-Watson statistic ", d);
          Console.WriteLine(" ");
          Console.WriteLine("  {0}{1,10:f4}{2,10:f4}", " Lower and upper bound ", pdl, pdu);
        }
        else
        {
          Console.WriteLine(" ");
          Console.WriteLine("** g02fc failed with ifail = {0,5}", ifail);
        }
        // 
      }
      catch (Exception e)
      {
        Console.WriteLine(e.Message);
        Console.Write( "Exception Raised");
      }
    }
  }
}


関連情報
Privacy Policy  /  Trademarks