まずは蝋の翼から。

学んだことを書きながら確認・整理するためのメモブログ。こういうことなのかな?といったことをふわっと書いたりしていますが、理解が浅いゆえに的はずれなことも多々あると思うのでツッコミ歓迎

2019-05-01から1ヶ月間の記事一覧

Rでメモリを解放したい

デカイオブジェクトを何個も作る場合、メモリが足りなくなる。それゆえに、使わなくなったら削除してメモリを空けたい。 ただ、Rではどうやらメモリを食っているオブジェクトを削除するだけではメモリが空かないみたい(Rに限った話なのかは不明)。 以下は現…

brmsを使ってみる

brmsというStanのラッパーパッケージで遊ぶ。 概要 例えば、rstanを使う場合はStanコードを別ファイルの.stanに記述してそれを呼び出す形でbayes推定をおこなう。一方、brmsを用いるとStanコードをわざわざ書かなくてもbrmsパッケージの関数を用いればbayes…

StanのMCMC結果&パラメータ結果を可視化する② tidybayes

Stanの結果を可視化する。 今回は tidybayesについて。 前回はbayesplot shinystanパッケージだった。 knknkn.hatenablog.com tidybayesでパラメータのサンプリング結果を可視化する 今回は以下の記事と公式を参考にします。 tidybayesパッケージで推定結果…

StanのMCMC結果&パラメータ結果を可視化する① bayesplotとShinyStan

背景 最近rstan経由でStanを使ってる。rstanを用いた結果(収束診断とか事後確率分布とか)はそのままのデータでは可視化をするのが面倒。 可視化するのに便利なパッケージはないか調べてみると、ggmcmc とか bayesplot とか shinystan とか tidybayes とか色…

tidyverseとNSE

tidyverse系で変数を使いたいときめんどくさいなぁという話。 はじめに要点をざっくりまとめると、tidyverse系でdplyrでdata$列名ではなく列名と直接書けるのはNSE表現になっているので、そういう場所はNSEに合わせた書き方しようね。変数はSEなのでそのまま…

機械学習による予測確率は真の確率とは異なる

以下の記事では傾向スコアをロジスティク回帰で求めてその傾向スコアをもとにATEなどを求めた。 knknkn.hatenablog.com 機械学習で出した確率は、予測確率が0.5未満ならラベル0、0.5以上ならラベル1にする、といったような分類器として使う場合は(おおむね…

傾向スコアによるマッチングを試す

傾向スコアによるマッチングを試す。内容は岩波DS3を、コードは以下を参考。 統計的因果推論(2): 傾向スコア(Propensity Score)の初歩をRで実践してみる - 渋谷駅前で働くデータサイエンティストのブログ 岩波データサイエンス Vol.3発売日: 2016/06/10メデ…

差分の差分法(DID)を試す

差分の差分法(DID)の勉強のために以下の記事を参考にする。 https://fisproject.jp/2016/05/difference-in-differences-using-r/ 使用するデータは 、A-Gまでの7ヶ国についてy, y_bin, x1, x2, x3, opinion を1990年から10年間に渡り記録したパネルデータと…

各モデルで使われる変数重要度についてまとめる

はじめに 機械学習タスクにおいて、ブラックボックス性を減らし解釈性を上げるためにどの特徴量がどれくらい効いたかを示す必要性が増えている。また、特徴量選択やフィーチャーエンジニアリングの際にも参考になる。そのため、機械学習タスクをやるにあたっ…

SHAP valueを使ってみる

SHAP valueを実際に試してみる。コードは以下の記事のものを拝借。 Shapを用いた機械学習モデルの解釈説明 - Qiita なお、データはkaggleのHouse Pricingコンペデータをテキトーに加工して作っている。SalePrice(対数化済)を目的変数として、簡易化のため変…

複数のモデルを管理する

purrrとbroomの使い方をマスターするために。以下の記事をトレースする。 内容自体は引用元記事の方がちゃんとしているのでそちらを読んでもらいたい。本記事は、読むにあたって理解が薄い人(=自分)用の補足メモを書きながらのトレースとなる。そのため、本…

themeを作ってggplotの出力コードをコピペで何回も繰り返さない

はじめに ggplotを使っていて、結構何回も同じこと書いていることが多いなーと感じたので改めて省略できる部分を省略することを考える。 そもそもプログラマーのための原則として、DRY原則というものもある。 DRY原則 | プログラマが知るべき97のこと また、…

glue::glue()による動的なファイル名/クエリの生成

Rのglue::glue()を使うと、{}で囲った変数名に応じた変数で補完した文字列が生成される。 library(glue) for (i in 1:3){ print(glue('hoge{i}')) } # => # hoge1 # hoge2 # hoge3 glueを利用して、動的にファイルを作成する。以下では、irisをspecies毎に分…

lfe::felmで固定効果モデルを試す

固定効果モデル(Fixed Effect)を考える。 固定効果モデルとは 固定効果モデルとは、ざっくり書くと、パネルデータに対するOLSの際にパネルデータ内の個人毎に異なる「個人差」のような部分を除去してOLS推定ができるようになるモデル。 固定効果モデルイメー…