R4.2統計解析ベストプラクティス
R,R Markdown on RStudio,
R on Jupyter Notebook
Update 2023.01.29
Since 2003.06.03
1千万人超ありがとう
リピータ ノーカウント
R4.2 統計解析ベストプラクティス【Rの準備と基礎】
オリジナルなRスクリプト,R markdown,Jupyter NotebookがDL可
このHPのコンテンツはソースコードを含めて自由に使っていただいて結構です
「AIエンジニア/データサイエンティスト」の必須スキル
必須スキルは統計学です
統計学の二値分類;ロジスティック回帰の性能は機械学習の二値分類(左図;AIディープラーニング)にはかないません
でも,統計学の基礎がなければ,機械学習もデータサイエンスも絵に描いた餅になります
「 R on Jupyter Notebook」 vs 「R Markdown on RStudio」
RスクリプトファイルをRStudio上で走らせるのをデバッグの常識だと思っていませんか?
R Markdown on RStudioよりもっと優れた開発ツールがあります。
『東京大学のデータサイエンティスト育成講座』は,言語はPythonですが,開発ツールにJupyter Notebookを使います。もちろん,R言語でも使えます。Jupyter NotebookからR Markdown on RStudioを簡単に作れます。
何よりもデバッグがとてもやりやすくなります。
「R」「RStudio」のダウンロード・インストール
「Jupyter Notebook for R」をインストール
「Jupyter Notebook」上でrunできる「R」は簡単にインストールできる。しかも,そのまま「Python」もrunできる。
「Jupyter Notebook」から「R」スクリプト「R markdown」が簡単に作れる。逆も可。
「R」スクリプト「R markdown」をrunできる「RStudio」も簡単にインストールできる。
マクスウェル方程式の微分形と積分形の数式をきれいに書く方法と見本
数式エディタ「数式3.0」の代わり,MathType,MathJax-LaTeX
MS WORD,Webページ(html),Jupyter Notebook,DTP上で使い分ける
$ div\boldsymbol E=\dfrac{\rho }{\varepsilon _{0}} $
$ rot\boldsymbol B-\varepsilon _{0}\mu _{0}\dfrac{\partial \boldsymbol E}{\partial t}=\mu _{0}\boldsymbol j $
$ div\boldsymbol B=0 $
$ rot\boldsymbol E+\dfrac{\partial \boldsymbol B}{\partial t}=0 $
ロングフォーマット,ワイドフォーマット
pivot_wider, pivot_longer, separate, unite
ロングフォーマットとは:対象とする測定項目が1列に並んでいるデータ,pivot_widerを使いワイドフォーマットに変換できる
ワイドフォーマットとは:対象とする測定項目が複数列に並んでいるデータ,pivot_longerを使いロングフォーマットに変換できる
Rでデータセットを読み込むあらゆる方法
CSV, TSV, SSV, セミコロン区切り, スペース区切り, read.csv, read_csv,
read.csv2, read_csv2, read.delim, read_delim, read.table, read_table
CSV(Comma Separated Value), セミコロン区切りファイル, TSV(Tab Separated Values), 空白区切り固定長幅ファイル
ヘッダーなしファイルにヘッダー付加, R3ではstringsAsFactors=Tがデフォルト
R4.2 統計解析ベストプラクティス【階層ベイズ・ミックスモデル】
オリジナルなRスクリプト,R markdown,Jupyter NotebookがDL可
このHPのコンテンツはソースコードを含めて自由に使っていただいて結構です
『データ解析のための統計モデリング入門』久保拓弥
3章~10章 GLM, GLMM, 階層ベイズモデル
WinBUGS(有償)は使いません
GLM(stats::glm),GLMM(lme4::glmer),階層ベイズ(MCMCglmm, RStan brms::brm)
(フィッティングの書式やグラフの書式がほぼ統一されています)
『データ解析のための統計モデリング入門』久保拓弥
個体差+場所差の階層ベイズモデル
WinBUGS(有償)は使いません
GLMM(lme4::glmer),GEE(gee::gee),階層ベイズ(MCMCglmm, RStan brms::brm)
University of Virginia Library
『Getting Started with GEE』
経時測定・反復測定の階層ベイズモデル,一般化線形混合モデル,一般化推定方程式
GLMM(lme4::glmer),GEE(gee::gee),階層ベイズ(MCMCglmm, RStan brms::brm)
『生物統計ハンドブック』p78 経時測定されたカウントデータにおける多群間の違い
経時測定・反復測定データ:GLMM,GEE,階層ベイズ
GLMM: Generalized Linear Mixed Model; 一般化線形混合モデル(lme4::glmer)
GEE: Generalized Estimating Equation; 一般化推定方程式(gee::gee)
階層ベイズモデル(MCMCglmm)(RStan brms::brm)
『生物統計ハンドブック』 p36 経時データにおける群間の違い
経時測定・反復測定データ:GEE,GLMM,階層ベイズ
GEE: Generalized Estimating Equation; 一般化推定方程式(gee::gee)
GLMM: Generalized Linear Mixed Model; 一般化線形混合モデル(lme4::glmer)
階層ベイズモデル(MCMCglmm)(RStan brms::brm)
経時測定・反復測定の二値分類の階層ベイズモデル
prior, formula, familyはどのように書くのが正しいのか?
応答変数はカテゴリですが,family="categorical", family = "threshold"では上手くいきません。
階層ベイズ(MCMCglmm, RStan brms::brm)
生物学的同等性試験;BE試験(クロスオーバー デザイン)
『生物統計ハンドブック』p312 同等性の検定
ハンズオンでベストプラクティスになるように全面的に書き換えました
線形混合モデルLMM,一般化線形混合モデルGLMM,階層ベイズの"treat"の信頼区間
R4.2 統計解析ベストプラクティス【一般化線形モデル】
オリジナルなRスクリプト,R markdown,Jupyter NotebookがDL可
このHPのコンテンツはソースコードを含めて自由に使っていただいて結構です
Space Shuttle Challenger disaster
【スペースシャトル・チャレンジャー号の悲劇】
ロジスティックGLMをシグモイド曲線で解析
階層ベイズ(MCMCglmm, RStan brms::brm)で回帰線がシグモイドになるか
二値分類問題の予測精度はROC曲線のAUCで評価するが,予測式のシグモイド曲線で破損確率を直接算出する
『フリーソフトRを使ったらくらく医療統計解析入門 』大櫛陽一
5章【例 5.2】大腸がんのリスク因子(多重ロジスティック回帰GLM)
1つめの例題は,病気の原因を特定し,それのオッズ比を示す
2つめの例題は,病気の検査診断の有効性を感度,特異度,ROC,AUCで示す
RPubs - Logistic, Ordinal, and Multinomial Regression in R
順序ロジスティック回帰と多項ロジスティック回帰
Rスクリプト,R Markdown on RStudio,R on Jupyter Notebook
$$\log(\frac{Pr(Admit)}{NotAdmit}) = \beta_0 + \beta_1(gre) + \beta_2(gpa) + \beta_3(rank) + \varepsilon$$
$$\log(\frac{Pr(apply=2)}{Pr(apply=0|1)}) = \beta_0 + \beta_1 (pared) + \beta_2 (public) + \beta_3 (gpa) + \varepsilon$$
R4.2 統計解析ベストプラクティス【一般線形モデル】
オリジナルなRスクリプト,R markdown,Jupyter NotebookがDL可
このHPのコンテンツはソースコードを含めて自由に使っていただいて結構です
EDA and Multiple Linear Regression on Boston Housing in R
重回帰のベストプラクティスを超有名なデータセットBoston Housingで
機械学習コンペスタイル:holdout法;ホールドアウト法
同じく:K-fold Cross-Validation;k分割交差検証
EDA; Explanatory Data Analysis(探索的データ分析)
autoplot(); 線形回帰の診断プロットの詳細
Polynomial Regression in R Programming
多項式回帰のベストプラクティスを超有名なデータセットBoston Housingで
多項式なのにstats::lm: Fitting Linear Modelsを使う
機械学習コンペスタイル:holdout法;ホールドアウト法
『フリーソフトRを使ったらくらく医療統計解析入門 』大櫛陽一
6章【例 6.1】赤血球数の年齢間比較(一元配置分散分析)
『Rを始めよう 生命科学のためのRStudio入門』
ch5 統計解析をちゃんとした手順でやってみる(一元配置分散分析)
『生物統計ハンドブック』
p43 一因子について多群間での違いを検討(一元配置分散分析
『フリーソフトRを使ったらくらく医療統計解析入門 』大櫛陽一
6章【例 6.2】ストレスレベルの違いによる女性の赤血球数(二元配置分散分析)
平方和Sum of Squares type I, II, III の使い方の詳細
『Rを始めよう 生命科学のためのRStudio入門』
ch6 もっと高度な統計解析をやろう(二元配置分散分析)
『生物統計ハンドブック』p52 d010303
一元配置共分散分析;one-way ANOCVA(Analysis of covariance)
Rを始めよう 生命科学のためのRStudio入門』
ch6 もっと高度な統計解析をやろう(一元配置共分散分析)
交絡因子を調整して一因子について多群間での違いを検討
混合モデルの中にあるランダム効果の構造
分散共分散行列 GRV matrixとは
階層ベイズモデル MCMCglmmの事前分布の設定に出てくるGRVとは,ARとは???
『生物統計ハンドブック』p65 d010304
経時測定・反復測定について多群間の違い(線形混合モデル)
MMRM-GLSモデル
変量効果のない誤差の分散共分散行列を直接指定
nlme::gls: Generalized Least Squares
MMRM(Mixed-effects Model Repeated Measures)
R4.2 統計解析ベストプラクティス【混同行列・ROC曲線】
オリジナルなRスクリプト,R markdown,Jupyter NotebookがDL可
このHPのコンテンツはソースコードを含めて自由に使っていただいて結構です
『今日から使える医療統計』新谷歩
Lesson11 感度・特異度
二値分類の重要指標;
感度,特異度を
仮説検定,混同行列,ベイズ法で説明
感度,特異度を総合的に評価するのが,
ROC曲線,AUCである
二値分類器の代表である
ロジスティック回帰GLMを使って系統的に解説
Logistic Regression with Confusion Matrix, ROC Curve and AUC
ロジスティック回帰GLMを混同行列,ROC曲線,AUC-ROCで解析
二値分類問題検査診断の有効性(混同行列,ROC曲線)
二値分類の混同行列,古典統計学の仮説検定,ベイズ統計の事後リスク
この3つは同じことを表現しています。
機械学習コンペスタイル:holdout法;ホールドアウト法
仮説検定のH0, H1の山から混同行列,ROC曲線を手計算する
体温だけでインフルエンザを検査・診断する仮想的な例
手計算とは筆算ではなく,原理どおりにfrom scratchでプログラムして計算します
R4.2 統計解析ベストプラクティス【生存時間解析】
オリジナルなRスクリプト,R markdown,Jupyter NotebookがDL可
このHPのコンテンツはソースコードを含めて自由に使っていただいて結構です
白血病患者の寛解時間を Kaplan-Meier 法で推定する
ggplot系で生存曲線を描く
メジアン生存時間(MST; Median Survival Time)の算出
手計算で生存率曲線を描いて打ち切りデータの扱いを理解する
『フリーソフトRを使ったらくらく医療統計解析入門 』大櫛陽一
5章【例 5.3】ライフスタイルと糖尿病発症(Cox比例ハザード回帰)
ハンズオンでベストプラクティスになるようにオリジナルなコードに書き換えてあります
『生物統計ハンドブック』
LD50(50%致死量:Lethal Dose 50)を推定する
プロビットモデル,ロジットモデル
family = binomial(link=probit)
family = binomial(link=logit)
R4.2 統計解析ベストプラクティス【多変量解析】
オリジナルなRスクリプト,R markdown,Jupyter NotebookがDL可
このHPのコンテンツはソースコードを含めて自由に使っていただいて結構です
Iris dataを使うRによる線形判別分析のベストプラクティス
Iris data LDA: Linear Discriminant Analysis in R
分類問題では線形判別は機械学習特にニューラルネットワークや勾配ブースティングと勝負になりませんが解釈と説明力で優っています
機械学習コンペスタイル:holdout法;ホールドアウト法
R4.2 による生物統計学の統計解析のベストプラクティス
オリジナルなRスクリプト,R markdown,Jupyter NotebookがDL可
Lesson 1 統計の基礎知識ー統計ってなんだろう
Lesson2 グラフの読み方・使い方
Lesson3 単変量統計テストの選び方
Lesson4 交絡と回帰分析モデル
Lesson5 症例数とパワー計算
Lesson11 感度・特異度
Lesson12 同等性・非劣性の解析
Lesson13 カプランマイヤー曲線
ご意見,ご質問は,次にメールください。ウィルス対策のため@が*になっているので書き直す
yamakatsusan00*yahoo.co.jp
ハンズオンでベストプラクティスになるようにテキストにないtidyverse, ggplot2などを使いオリジナリティのあるコードにリファクタリングしました
超簡単なグラフは完全オリジナルです