2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

EZRで医療統計+αでStanを使ってベイズ統計(一人)Advent Calendar 2017

Day 4

「みんなの医療統計 12日間で基礎理論とEZRを完全マスター!」1日目

Last updated at Posted at 2017-12-15

「みんなの医療統計 12日間で基礎理論とEZRを完全マスター!」1日目の「記述統計量」の章を読んだ後、独自で学習した際の記録を残す。
今回は特にベイズに関連する部分はない。

更新

  • 20220716 引用部分と記事作成者の記述の違いが分かりづらいので修正。書評を追加。

書評

新谷本1日目「記述統計量」章

  • 例を挙げながら、データの集団をいかに表すかを説明しており分かりやすかった。
  • データの説明の際、どの記述統計量を使うべきかの説明をイラスト入りで説明しており頭に入りやすかった。

章キーワード

  • 平均値
  • 標準偏差と正規分布
  • 分布と偏り
  • ばらつき
  • 中央値
  • 四分位点

学習のメモ

  • 指数との関係
  • 記述統計量はKPIなどの指数の作成によく使われている気がするが本当にそうなのか調査
  • 記述統計と標本分布の関係を確率分布の文脈で調べたい
  • 記事作成者は記述統計量を使うよりも分布のグラフを出してしまう
  • 記述統計と推測統計でいうところの前者の話

記事作成者の文章

記述統計量をEZRで出力する

記述統計量には平均値や標準偏差があるが、データの集団を表すには不十分なことが多い。
より正確にデータの情報を説明するためには、分位点など適切な記述統計量を利用することが重要。
これらについて、EZRを利用しながら学習していく。

EZRの出力レポート

以下の文章は、新谷本を参考にEZRのGUIを使っていくことで自動的に生成されたマークダウンファイルに追記を行ったもの。

<!-- R Commander Markdown Template -->

Replace with Main Title
=======================

### Your Name

### 2017-12-06

データセットとして、http://www.kspub.co.jp/download/1563148a.zip のデータを利用した。
糖尿病患者のデータで、おそらくアメリカのものと思われる。

> #####テキストファイルからデータを読み込む#####
> Dataset <- read.table("C:/EZRDATA/Datasets/1日目+5日目/DMRCT180.csv", 
+   header=TRUE, sep=",", na.strings=c("", "NA"), dec=".", fill=TRUE, 
+   quote="\"", strip.white=TRUE)
> library(tcltk, pos=15)

連続変数のコマンドを用いて記述統計量を算出する。

データ内で群間に分けて記述統計量を取ることがGUIでできるのでそれを利用した。

1 正規分布に従う集団の要約

はじめに介入群とコントロール群で年齢の分布の要約を出力した。
今回は介入群とコントロール群で年齢の分布にそれほど大きな違いが無いことが分かった。
だいたい正規分布に従っていそうなことから、平均や標準偏差が記述統計量として利用しやすそうなことが分かる。

> #####連続変数の要約#####
> res <- NULL
> res <- numSummary(Dataset[,"age"], groups=Dataset$arm, statistics=c("mean", 
+   "sd", "quantiles"), quantiles=c(0,.25,.5,.75,1))
> colnames(res$table)[1:2] <- gettextRcmdr( colnames(res$table)[1:2])
> windows(width=7, height=7); par(lwd=1, las=1, family="sans", cex=1, mgp=c(3.0,1,
+   0))
> dot.plot(Dataset$arm, Dataset$age, xlab="arm", ylab="age")
plot of chunk unnamed-chunk-5
> res
                 平均 標準偏差 0% 25% 50% 75% 100% data:n
コントロール 56.61798 11.04074 21  50  57  64   79     89
介入         54.08791 12.61802 20  46  54  62   87     91

2 正規分布に従わない集団の要約

次に介入群とコントロール群で罹患期間(年数?)について要約した。
これは罹患期間の短い人の多い山形の分布になっていることから、平均や標準偏差での記述に向かないことがわかる。

> #####連続変数の要約#####
> res <- NULL
> res <- numSummary(Dataset[,"dur_dise"], groups=Dataset$arm, statistics=c("mean",
+    "sd", "quantiles"), quantiles=c(0,.25,.5,.75,1))
> colnames(res$table)[1:2] <- gettextRcmdr( colnames(res$table)[1:2])
> windows(width=7, height=7); par(lwd=1, las=1, family="sans", cex=1, mgp=c(3.0,1,
+   0))
> dot.plot(Dataset$arm, Dataset$dur_dise, xlab="arm", ylab="dur_dise")
plot of chunk unnamed-chunk-6
> res
                 平均 標準偏差 0% 25% 50% 75% 100% data:n
コントロール 8.584270 9.080209  0   1   5  12   36     89
介入         8.208791 9.302946  0   1   5  11   35     91

分割表の作成とその要約

介入群とコントロール群における男女間の割合の違いが無いか調べるため、分割表の作成を行った。
この場合、群数での比較になると分かりづらいので、割合に直してからの比較の方が適切。
結果から、介入群の方が男性が多いことが分かる。

また、症例数が40以上なのでカイ二乗検定を行った。

これは4日目の時の統計テストの選び方で説明がなされる(新谷本9日目も読む必要あり)。
20症例以下の場合はフィッシャーの正確確立検定を行うとのこと。

結果から、p値が0.4652なので、統計的な有意差はなさそう。このため介入群とコントロール群で男女比の差は問題ない程度であると考えられる。

> library(abind, pos=16)
> #####分割表の作成と群間の比率の比較(Fisherの正確検定)#####
> Fisher.summary.table <- NULL
> .Table <- NULL
> .Table <- xtabs(~arm+pat_gend, data=Dataset)
> .Table
              pat_gend
arm            女性 男性
  コントロール   38   51
  介入           34   57
> colPercents(.Table) # 列のパーセント表示
              pat_gend
arm             女性  男性
  コントロール  52.8  47.2
  介入          47.2  52.8
  Total        100.0 100.0
  Count         72.0 108.0
> .Test <- chisq.test(.Table, correct=FALSE)
> .Test

	Pearson's Chi-squared test

data:  .Table
X-squared = 0.5334, df = 1, p-value = 0.4652

参考

みんなの医療統計 12日間で基礎理論とEZRを完全マスター!

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?