行列プログラミング ~Mata~

環境

  • 対話型環境
  • 開発用環境
  • コンパイルコードの自動生成

一般的機能と行列演算子

  • 20億超の行の取扱い(Stata/MP)
  • 20億に至る行の取扱い(Stata/SE、Stata/IC)
  • 実数値、複素数値のサポート
  • 行または列によるジョイン
  • 加算、減算、乗算、スカラー除算
  • 要素単位の演算
  • 転置と形式変更
  • Kronecker積、Hadamard積
  • 内積、外積

最適化

  • 関数、関数と勾配、関数と勾配とHessianのコード化
  • Newton–Raphson, BFGS, DFP, BHHH, Nelder–Mead, Gauss–Newton手法
  • 一般問題用バージョンと統計問題用バージョン
  • Hessian、勾配の外積、ロバスト/サンドウィッチベースの共分散行列
  • 線形計画

数学/行列関数

  • LAPACK数値解析ルーチン
  • インテル数学カーネルライブラリ(MKL)
  • 数百に及ぶ数学、文字列、行列ユーティリティ関数
  • 日付と時刻の機能
  • Unicode対応の文字列関数
  • ロケールに基づく文字列の並べ替え/比較
  • 対称、非対称、一般化逆行列
  • Cholesky, LU, QR, SVD解法機能
  • 超越関数、三角関数
  • ガンマ関数、順列関数
  • 密度関数、分布関数
  • 多項式評価、代数、解析計算
  • Hilbert, Toeplitz, Vandermonde行列
  • 重複行列、交換行列、消去行列
  • 乱数生成
  • 高速フーリエ解析
  • 3次スプライン
  • 行列の平均値、和、最小値、最大値
  • 数値的1階 / 2階導関数
  • 数値積分

Stataインタフェース

  • Stata データセットと行列間の変換
  • データセットに対する仮想行列ビュー
  • e–クラスやマクロへのアクセスと設定
  • データセットの値ラベルの操作
  • Stataデータフレームにアクセスして操作

コンパイル化された言語

  • C/C++–ライクな構文
  • クラス
  • 構造体
  • ポインタ
  • 文字列型と数値型
  • 定義済みの行列型(行ベクトル、列ベクトルを含む)

オブジェクト指向プログラミング

  • 継承
  • 仮想化関数
  • データ構造、プログラムのカプセル化

分解

  • 固有値と固有ベクトル
  • コレスキー(Cholesky)
  • LU, LUD
  • LDL
  • QR
  • Schur
  • Hessenberg
  • 特異値
  • 置換行列

データ蓄積

  • クロス積
  • 平均からの乖離のクロス積
  • 重み付き、GLS 型クロス積
  • 4倍精度クロス積

非線形系ソルバ

  • 不動点問題、求根問題
  • Gauss–Seidel, Broyden–Powell, Newton–Raphson手法

Word、Excel、PDFファイルの作成

  • プログラミングからのWordファイル作成
  • Excelシートセルへの低次なアクセス/書き込み/読み取り(グラフ、数式、日付フォーマット、通貨フォーメット、太字、斜体を含む)
  • プログラミングからのPDFファイル作成

その他の機能

  • 文字列スカラー/行列
  • ファイルI/O(バッファ型 I/Oを含む)
  • URLパーセントエンコードとデコード
  • C–ライクな構文
  • 高速実行

詳細資料

詳細は、開発元StataCorp.の機能紹介ページにあるマニュアルをご覧ください。

関連書籍

The Mata Book: A Book for Serious Programmers and Those Who Want to Be by William W. Gould

Stata is a registered trademark of StataCorp LLC, College Station, TX, USA, and the Stata logo is used with the permission of StataCorp.

page_top_icon