CATDAP for R package


統計数理研究所

2020年3月



1. はじめに

 CATDAP (CATegorical Data Analysis Program)は,統計数理研究所で開発された最適な分割表(クロス表)の探索のためのプログラムである.最適な説明変数の選択には,AIC (Akaike Information Criterion)が使われている.
 CATDAPには,CATDAP-01 と CATDAP-02とがある. CATDAP-01は,カテゴリカルな(質的)データに対し二次元分割表の比較を行い各変数の間の関係の深さを検出するプログラムである.全ての変数がカテゴリカルであることが前提となる.
 CATDAP-02は,ひとつの着目した項目(目的変数)を固定し,他の項目(説明変数)の組合せで多次元分割表を作り,目的変数の分布の違いを最も適切に説明する説明変数組合せを探索する.このプログラムは量的な項目も適当に区分してカテゴリカルなデータに帰着することにより,変数が量的か質的かにかかわらず適用できる.

 Rパッケージcatdapは,FORTRANで書かれた CATDAPの計算処理機能をライブラリ化することにより,R からこれらを関数として利用できるようにした.このパッケージには catdap1 と catdap2 の二つの関数があり,それぞれ CATDAP-01 と CATDAP-02 と同様の解析と結果出力をする.Rはオリジナルデータの変換も容易で分割表のモザイクプロット表示も可能なので,RのパッケージとしたことでCATDAPでの解析も効率良く行えるようになった.

 オリジナルの CATDAP-02では目的変数が量的な項目であるデータには適用できなかったが,関数 catdap2 では
   Base AIC (=説明変数なしモデルの AIC) の利用 (バージョン 1.0.6以降)
   連続値目的変数に適用 (バージョン 1.2.0以降)
   目的変数, 説明変数に欠測が含まれるデータに適用 (バージョン 1.3.4以降)
が可能となり機能強化された Ref.(5).このプログラムであてはめられたモデルと,目的変数に正規分布を仮定する回帰モデル あるいは ロジスティック回帰モデルとのAICの比較が可能である.いうなれば,"CAT" が "TIGER" となった The Integrated GenERal Data Analysis Program とでも称すべきバージョンとなっている.

 なお関数 catdap2 の機能は,RcmdrPlugin.catdap パッケージを利用してRコマンダーのGUIから利用することも可能である.

 下の図は,健康に関するデータを用いてcatdap2を実行した結果である.
 左図は二次元分割表を帯グラフで表した場合,右図はAIC最小モデルをモザイクプロットを使ってグラフ化した場合の例である.

catdap2()の実行結果

2.Rのインストール

ここでは,Windows版 Rのインストール方法について簡単に説明する.Linux版や他のバージョンのインストール方法については,RjpWiki を参照のこと.

(1) RのインストールプログラムをCRANのホームページ https://cran.r-project.org/ または統計数理研究所のミラーサイト (http://cran.ism.ac.jp/)を利用してダウンロードする.

(2) ダウンロードした実行ファイル(例えば R-3.6.1-win.exe)を開きインストーラを起動する.表示画面に従ってセットアップに使用する言語を選択「Japanese(OK)」し,セットアップウィザードを開始し完了画面まで進み「完了」をクリックする.


3. パッケージ catdap のインストールとロード

catdapパッケージは CRANの拡張パッケージ(Contributed Packages) として登録されており,OSによっては こちら のサイトからダウンロードする.

3.1 Windowsの場合

(1) バイナリファイル catdap_1.3.5.zip を適当なフォルダにダウンロードする.

(2) R (RGui) を起動し,メニュー [Packages] から

   --> Install package(s) from local zip files...

   --> Select files で ダウンロードした catdap_1.3.5.zip を選択.

(3) メニュー [Packages] から

   --> Load Package..

   --> Select one で catdap を選択.

3.2 Linuxの場合

(1) ソースファイル catdap_1.3.5.tar.gz を適当なディレクトリにダウンロードする.

(2) ターミナルで R を起動し,

   > install.packages("ダウンロード先のパス/catdap_1.3.5.tar.gz", repos=NULL)

  を実行してインストール.インストール先を指定したい場合は,lib="インストール先のパス" で指定する.

  特に指定しない場合は,>.libPaths()で最初に表示されるディレクトリにインストールされる.

(3) catdapをロードする.

   > library(catdap)


4. ヘルプの使い方

  catdapパッケージの概要について知りたい場合には

   > help(catdap)

  関数の利用方法については,例えば catdap2() の場合

   > help(catdap2)

  を実行する.ヘルプページの例題は,コピー&ペーストすることによって実行することができる.

   > example(catdap2)

  を実行すると,ヘルプにある例題が実行される.


  Downloads:

    リファレンスマニュアル   catdap-manual.pdf



5. Reference

(1) Y.Sakamoto and H.Akaike (1978). Analysis of Cross-Classified Data by AIC. Ann. Inst. Statist. Math., 30, pp.185-197.
(2) K.Katsura and Y.Sakamoto (1980). A Categorical Data Analysis Program Package, Computer Science Monographs, No.14.
  The Institute of Statistical Mathematics, Tokyo.
(3) Y.Sakamoto (1985). Categorical Data Analysis by AIC, Kluwer Academic publishers.
(4) (株)NTTデータ数理システム (2015). 情報量統計学的データ可視化ツール. http://hdl.handle.net/10787/3614
(5) 石黒 真木夫 (2016). CATDAPマニュアル. http://hdl.handle.net/10787/3821
(6) 石黒 真木夫 (2016). 統計モデル可視化. http://hdl.handle.net/10787/3823



本パッケージに関するご質問やバグ報告等がありましたら ismrp(at)jasp.ism.ac.jp 宛お寄せ下さい.
本研究の一部は,情報・システム研究機構 新領域融合研究センターの融合研究プロジェクト「機能と帰納:情報化時代にめざす科学的推論の形」の一環として実施されていました.