Data Blue

データの海で遊んでます。

2017-01-01から1年間の記事一覧

Rでの生存時間解析(時間変化共変量の処理)

今回は生存時間解析について。 フォローアップ中に、喫煙から非喫煙になったり、運動習慣が変化したり、などとアウトカムに関係のある変数が変化した時に、どう対応すればよいのでしょうか。このように、変化しうる共変量をTime varying covariates / time d…

Rの論理判定は欠損値があるときには注意

解析に回す前にデータクリーニングなどを行いますが、 欠損値があるときにAndやOrなどの演算子を使うと、 予期せぬ挙動をすることがあります。 RのNAの処理の仕方が、かなり我々の印象と違います。 例 (irisデータで) test = iris test[sample(1:nrow(iris),…

Irisデータで勾配ブースティング

実際にxgboostを使用して、Gradient Boostingをしてみます。 今回は、Irisデータを7:3にトレーニングとテストに分けて、XGboostをやってみます。 Petal.Widthがデータ平均以下/以上の予測を行うことにします。 とりあえず、R上で下記を走らせてみます。 # Pr…

ロジスティック回帰の変数選択はちょっと違う

多変量回帰において、どれが有効なモデルかわからないときに、なんでもかんでも、とにかく変数を突っ込んでみて、有意だったら残すというアプローチがあります(e.g. ステップダウン、ステップワイズ等)。 良い予測モデルを得るのが目的の場合には上記のやり…

多腕バンディット問題の解(Dynamic Programming)

多腕(k)バンディット問題をDirect programmingで解きます。現在の状態sについて、将来の最大期待値であるV(s)は下記のように書け、下記を満たすようなアームjを選択するのが、次の一手になります。 ここで、 V(s)は、全てのアームについてこれまで得られた情…

臨床試験の最適化

医師はこれまでの経験・エビデンスから、最も良い治療を患者さんに提供することを使命としています。しかし、治療法AとBがどちらが良いかわからないときはどうすればよいでしょうか*1? そのような状況に限り、患者さんに最適の医療を提供するという本来の目…

多重検定問題

第一種の過誤(Type I error)はアルファエラー(alpha error)とも呼ばれ、実際に差が無いものを誤って差があるといってしまうことです。アワテンボウのエラーと呼ばれる所以です。 よく行われるのが α (有意水準)= 0.05として、p値*1がこれを下回ると、2群…

False Discovery Rateのメモ

FDR: False Discovery Rateは、q-valueとも呼ばれ、SNPやMetabolomeなどで多重検定を行いシグナル検出をするときに、とりあえず可能性のあるシグナルは多めに拾っておきたいというときに使用されます。 例えば q-value < 0.05だとすると検定で有意としたもの…

Permutation テスト

遺伝子やメタボロームなどのOmicsデータの解析でよく聞くパーミュテーションテストについて概要をメモします。 結論からいうと、 ”知りたい因子の相関係数の正規分布が仮定できないときでも使える” 検定です。 例えばデータX(5列1000行)が、下記のような構…

勾配ブースティング(Gradient Boosting )について

前回は、CARTについてまとめてみましたが、ブースティングの中では勾配ブースティング(gradient boosting)が特によく用いられます。 【木1+残差→木1+木2+残差】 と残差について(小さな)木を次々に適用していく(Gradient)モデルです。 残差は連続数…

CARTまとめ(decision tree method)

決定木:Decision treeは2種類 分類木:Classification Tree(目的変数がカテゴリー変数) 回帰木:Regresion Tree (目的変数が連続変数) これら決定木を用いた分析が Classification and Regression Tree: CART分析と呼ばれます。 色々な解析方法がありま…

Windows機へのXGBoostのインストール

Rの場合は、 > install.packages("xgboost") のみでいいので簡単ですが、 PythonはHPに書いてある通りにしても全くうまくいきませんでした。 最終的には、カルフォルニア大学のHPから、 非公式のバイナリ―ファイルをダウンロードし、 > pip install ダウンロ…

条件付ロジスティック回帰(conditional logistic regression)

臨床研究で対象が稀な時に よく使用される 症例対照研究、 患者さんを一人登録したら、 マッチング因子(年齢・性別等)を 合せた症例対照を一人登録する というのが通常のやり方です。 100人(D+50/D-50)参加してもらい、データを集めました。 さあ暴露因子…