The One with ...

研究用のメモなどを公開しています

ggplot2による事後分布の視覚化

絶対忘れるので自分用にメモしておく. 目的 Stanで推定した結果を分布のまま直接比較したい. ggplot2用のデータフレームの作り方 流れはこんな感じ. Stanで推定した結果をfitに記録(CSVで記録すると結果的に遅かった.sample_file からのサンプル列の取…

多次元正規分布のパラメータ推定

今日はStanを使って多次元正規分布のパラメータを推定する練習をやってみましょう(授業の続き). まず推定用のデータをRで生成します. library(MASS) # for mvrnorm( ) N0 <- 300 #データ個数 m1 <- 0;m2 <- 0;s1 <- 1;s2 <- 1;r <- 0.6 #パラメータ設定 …

回答のランダム化とStanによる離散パラメータ推定

Stanによる離散パラメータの推定 離散パラメータが含まれている場合のMCMC推定は基本JAGSでやってきたのだが,新しい方法を勉強するためにStanで周辺化消去を試してみる. 以下StanとRコードは,松浦さんのアヒル本11章に依拠しています. 回答のランダム化 …

Stanによる推定例:ベルヌーイ分布のパラメータ

連勝記録から勝率を推定する ある棋士が29連勝した,というデータから,勝利確率をMCMC推定してみる.統計モデルの仮定は次の通りである. 毎回の勝ち負けは独立にベルヌーイ分布に従っている ベルヌーイ分布のパラメータpの事前分布は範囲[0,1]の一様分布と…

StanからWAICを計算するためのメモ

StanからWAICを計算するためのメモ 豊田本(2017)を参考に,Stanの結果からWAICを計算する方法のメモ. テキスト198ページ記載のコードは略記のため,そのまま書き写して実行してもStanが動きません*1. 公開されたコードを参考に確率分布のパラメータを適…

TeXstudioでオリジナルコマンドのショートカットキー設定方法 TeXstudio便利ですね.私は長い間 秀丸+マクロ を使っていましたが,TeX Live導入後は TeXwokrsとTeXstudioを併用しています. さて,TeXstudioでオリジナルのショートカットキーを作成したいと…

tikz-decoration

TikZのdecorationがうまくいかないので検索してみると,次のような解決策がweb上にあった. マニュアルに記載の \draw[decorate,decoration={coil,segment length=4pt}] (0,1) -- (3,1); \draw[decorate,decoration={coil,aspect=0}] (0,.5) -- (3,.5); を実…

JAGSでWAICを計算するためのメモ

試しに計算してみたのですが,まだ細部を理解できていないので,検証用にメモを残しておきます. 豊田本2017(『実践ベイズモデリング』)にStanからWAICを計算する手順が解説されていたので,それを参考にして JAGSから作ったサンプルでWAICを計算してみま…

TikZ

TikZで簡単かつ綺麗な図がかけるので,これがあれば研究の分析・報告・文章化は全てTeX+beamerだけで事足りるでしょう. 使わないとすぐに忘れそうなので,ポイントだけメモしておきます. 簡易マニュアルでも推奨しているように,最初にグリッドを書いてお…

Texworks ショートカットキーのカスタマイズ

Texworksのショートカットキーの設定を編集すると,任意のTeXコマンド入力を登録できます. 例えばTeXソース編集中に 図 + tab と入力するだけで, \begin{figure}[h] \begin{center} \includegraphics[scale=0.5]{ .pdf} \caption{•} \label{american} \end…

Income Segregation

www.jstor.org この論文を読んでいて,Income Segregation と Race Segregation を組み合わせて表現するコードを思いついたので,メモを残しておきます. 以前から,シェリングのsegregation modelにエージェントの所得情報を別のレイヤーで表示させる,とい…

研究会用メモ

案の定,2週間ほど前にやった計算をすっかり忘れて,同じコードを書くところであった. ブログにメモを残しておいたおかげで,思い出した. というわけで gmcから直接対数正規分布のパラメータを指定して,乱数を発生 そのデータからパラメータをMCMC推定す…

Refreshに関するメモ Mathematica内蔵関数Refreshの引数である,UpdateIntervalは更新を制御できたりできなかったりして,いまいち仕組みが分からない.そこでいろいろと実験してみた. Manipulate[ Refresh[Random[], UpdateInterval -> If[go, 0.105, Infi…

Dynamic Models of Segregation

Dynamic Models of Segregation (Schelling 1971)をリアルタイムに表現するコードを更新したのでそのメモを残しておきます. 今回はNetLogo風に,エージェントの幸福度をリアルタイムに計算してプロットする部分を追加してみました. Mathematica ノートブッ…

ノートPC SSD換装メモ PCがモッサリしてきたけど,買い換えると再設定が面倒.そんなときOSごとクローンしてSSD換装するわけですが, 数年に1回しかやらないので,手順をすぐに忘れてしまう.そこで,次に作業するとき参照するために記録を残しておきます. …

すぐ忘れるのでメモしておく. Kruschke氏のblogでは,対数正規分布のデータを生成するのに,一度正規乱数作ってから基準化して指数化するというやや煩雑な手順を用いている. 最初にコードを見たとき,BUGSのクセとあいまって,何をやっているのか分からなか…

校正をしてて気づいた点をメモしておく 図は完全にreproducibleなコードを残しておくべきである. 例えば,Mathematicaで独自関数をplotする場合, パラメータの数値なども図と一緒に出力するようなコードを書いておく. Module[{plot1, point = 18, t1, t2,…

前回の続き. そもそも分布を導出する理論モデルのパラメータを階層ベイズMCMCで推定できるのか,という確認をやってみる. まずデータとして,理論モデルからのサンプルをつくる. 今回はJAGSをRから呼び出すので, コードは全部Rで済むように書き換える. d…

ずっと気になっている(しかしマイナな)問題が解決しないので,そのメモを記録しておきます. 所得分布の生成モデルは,投資行動の反復から対数正規分布を導出する数理モデルである.仮定は次のとおりである(Hamada 2003; 2004; 2016). 人々が最初に初期…

順番を決めるコード

新学期がはじまるので,演習報告担当者の順番決め用のあみだくじコード(Mathematica)を再掲しておきます. (* 動的表現 サイズ固定*) Manipulate[ Dynamic[Refresh[RandomSample[Range[n]], UpdateInterval -> x]], {{x, Infinity, "シャッフル"}, {0 -> "…

データフレームを突っ込むと,データに含まれる全変数を応答変数にした分析を自動的にやってくれるコードを書いてみた. 具体的に言えば,データがn個の変数を含む場合に, が応答変数で,それ以外の全ての変数が説明変数 が応答変数で,それ以外の全ての変…

mathjax実験

はてぶろがマークダウンに対応しているのを知ったとき,へえそう,くらいにしか思ってなかった. が... いやいや,とっくにMathjax使えるようになっとるやん. とか とか. まあ,Rmarkdownやそのものより使いづらいけど,少なくとも見た目はRpubsより綺麗や…

人工的に作成したデータを分析すると,統計の理解が捗る.「p値ちっちゃい,やったー」みたいな意味のない分析するより,こっちのほうが統計初学者には勉強になるのではないか,と思う. 次のような例を考えてみよう. #仮説検定を繰り返してp値の分布がどう…