サイトトップ | Software Tips | R tips

Rによる保健医療データ解析演習

Latest update on 16th January 2024

Topics

このページについて

このページは表記の本(奥付では2007年12月25日刊行)についての情報を掲載するためのものです。コメントや質問は,minato-nakazawa[at]umin.netまで(ただし[at]は半角の@)メールでお願いします。

この本のために開発した関数群は,fmsbパッケージとしてCRANに登録しています(html版マニュアルはこちら)。最新版は2024年1月16日に作成した0.7.6です(Windows Binarygzipped sourceをダウンロードできますが,install.packages()関数を使ってCRANからインストールすることをお薦めします)。

Notes in English

This page is provided to support analyses written in my own Japanese textbook "[R] ni yoru hoken-iryou [data] kaiseki ensyu" (A workbook for data analyses in health and medicine using R), which was published in December 2007.

The functions in the book are available as a "fmsb" package in CRAN (A manual in html format is given here). The newest version of "fmsb" is 0.7.6 made on 16th January 2024. (Windows Binary and gzipped source are available, but I recommend to use install.packages() function)

書誌情報

2013年の出版社の業務変更により絶版です。下の方でリンクしている草稿pdfファイルまたはURL修正済みpdfファイルをご利用ください。

正誤表

以下の誤りについて,お詫び申し上げます。出版物では可及的速やかに(つまり,増刷の機会があれば,ということですが)修正します。

2008年8月27日記)なお,第6章第2節「独立2標本の平均値の差の検定」(p.74~p.78)において,p.77の脚注7で「常にウェルチの方法を用いるべきという意見」について触れていますが,本文では慣習的に行われてきた2段階検定を説明しています。しかし,奥村先生青木先生がシミュレーションで鮮やかに示されているように,常にWelchの方法だけにするのが検定としては良いと思いますので,もし増刷の機会があれば記述を改め,基本的にWelchを用い,2段階検定を慣習的な方法として脚注で紹介する形にしたいと思います。

はじめに
◎中間栄治さんのお名前を「英治」とミスタイプしておりました。中間さん,大変申し訳ありませんでした。
第5章
◎「5.6 χ2分布」の中で,確率密度関数の式(草稿p.81,本ではp.66)に打ち間違いがありました(ご指摘ありがとうございました>たけしょう)。式中,(v/2)v/2-1となっているところは(x/2)v/2-1で,exp(-v/2)となっているところはexp(-x/2)が正しい式です。
第8章
◎(2010年11月19日記)「8.3回帰」の中で,p.102の一番下の部分,「回帰直線の95%予測区間(期待値の標準誤差が95%の信頼性をもってこの区間に含まれるであろう範囲)と95%信頼区間(データの95%がこの範囲に含まれるであろうという範囲)」は英語との対応関係から考えても不適切でした。predict()関数の引数でinterval="prediction"とした場合,データの95%予測区間(データの95%はこの範囲に含まれるであろう範囲)が得られ,interval="confidence"とした場合,回帰直線の95%信頼区間(回帰直線は95%の確率でこの範囲に含まれるだろう範囲)が得られる,とするのが妥当だと思います。申し訳ありませんでした。
第11章
◎2群の分布の位置の差の定式化(草稿p.180,本ではp.162)で,F(x),G(y),F(x)≡G(x)となっている部分は,記法として不自然なので,F,G,F≡Gに変更。
◎メディアン検定のクロス集計表(草稿p.186,本ではp.168)の,Yのメディアン以上の値は,括弧の位置が間違っていて,(m+n/2)-Hではなく,(m+n)/2-Hが正しい。申し訳ありませんでした。
第12章
◎(2009年8月31日記)ロジスティック回帰分析の説明中(本書p.196),「relevel()関数を使うと便利である(コラム②参照)」とあるのは,「relevel()関数を使うと便利である(コラム③参照)」の誤りでした。
なお,Mac等で②③が豆腐にしか見えない環境の方に補足説明しますと,誤りが丸数字の2,正しいのが丸数字の3です。
◎(2010年11月22日記)p.196とp.198で,birthwtデータフレーム内のptlという変数の説明として,「非熟練労働経験数」という記載は,「早期産経験回数」の誤訳でした。申し訳ありません。
第13章
◎例題5のGehanのデータにコックス回帰をした結果の説明(草稿p.238,本ではp.217)で,死亡ハザードとあるのは再発ハザードの誤り。従って延命効果も,再発防止効果が正しいです。申し訳ありませんでした。

本書出版後のR本体またはパッケージの更新に伴う追加情報

第2章
(2010年3月30日記)RjpWikiのQ&A(初級者コース)/11の「関数read.shapeが使えません」の応答にあるように,maptoolsのバージョンアップに伴ってread.shape()という関数は消滅したので,現在使えるmaptools-0.7-29では下記classmap.Rは動作しません。read.shape()をreadShapePoly()にすればとりあえず使えるかもしれませんが未確認です。
(2010年3月31日追記)readShapePolyにすればShapeFileは読み込めましたが,それだけではダメでした。maptools内で扱える地理情報データオブジェクトが,2007年にはS3のMapクラスもあったのが,2010年現在ではS4クラスしかなくなってしまったので,大きく変更する必要がありました。RjpWikiに牧山さんが県ごとに分割後,圧縮して掲載されているjapan_ver62.zipをダウンロードし,展開してできるファイルのうち,gunma.dbf, gunma.shp, gunma.shxと,agedprop2006.txtを作業ディレクトリにおき,classmap2.Rを実行すれば,gunmaagedprop2006.pdfができあがります。
第8章
(2010年11月20日記) carライブラリのdata.ellipse()関数はdataEllipse()関数に名前が変わりました。
第13章
(2010年4月15日記) survivalライブラリのsurvfit関数が返すオブジェクトの中で,ntimes.strataという変数がnに変わった等の原因により,c13-5.Rで定義したloglogplot()という関数は動作しません。実はplot.survfitが多機能になっているので,ほぼ同じ二重対数プロットをしたい場合は,survfit関数が返すオブジェクトをKMとして,plot(KM, fun=function(y) {log(-log(y))}, lty=1:2)とすれば可能ですし,時間軸が対数表示で良ければplot(KM, fun="cloglog", lty=1:2)で可能です。
そのように書き換えた関数をc13-5a.Rとして掲載しておきます。
msb-funcs.Rを書き換えてパッケージ化作業中ですが(参照),上記理由のため,loglogplot()関数は削除します。

文書内で取り上げた外部サイトへのリンク集

はじめに
群馬大学社会情報学部の青木繁伸教授によるRによる統計処理
岡田昌史さんによるRjpWiki
OpenOffice.org日本ユーザ会
三重大学・奥村晴彦教授によるTeX Wiki
第1章
関西大学・荒木孝治教授によるR品質管理本サポート情報(Rcmdrの国際化関連情報など)
R-helpメーリングリスト(英語)
CRANの筑波大学ミラー
CRANの東京大学ミラー
RjpWikiの日本語化掲示板
「Rによる統計処理」内,Mac OSのインストール法の説明
cgiとhtmlフォームを使ったデータ入力の解説(当サイト内)
第2章
人口ピラミッドの作り方(当サイト内)
R研究集会2012報告(当サイト内)で,年齢別死亡率と年齢別出生率を与えた時の将来人口予測をして人口ピラミッドが変化していく様子をアニメーション表示する方法をデモンストレーションしています。
DIVA-GIS
ESRIジャパン社の全国市町村界データ
okinawaさんこと牧山文彦さんによるShapeFileライブラリ(RjpWiki内にあり,ESRIジャパン社提供のshpファイルを加工した都道府県別のファイルが公開されている)
群馬県の年齢別人口(平成19年10月1日現在) | 第3表(MS-Excel形式)(注:2008年10月現在,本書出版時に公開されていた平成18年10月1日現在のデータは,既に群馬県のサイトには存在しないようです)
市町村コード
第10章
Epiライブラリ(デンマーク・コペンハーゲン大学)
第12章
東京工業大学・下平英寿助教授による「Rによる多変量解析入門」講義資料(2004年度版) | 2006年度前期版(leapsというライブラリのleaps関数を使うと総当り法ができるとは知らなかった)
群馬大学社会情報学部・青木繁伸教授による総当り法変数選択の説明とRコード
第13章
プリンストン大学にあるGehanの白血病治療データ
付録A.
当サイト内,統計処理ソフトウェアRについてのTipsでは,ソフトウェアのバージョンアップ,Rnewsのリリース,新しい本の出版情報など,Rに関わるニュースと,新しく知ったりまとめたりしたtips的な情報を随時掲載している。

本のダウンロード

各章のRスクリプト

タブ区切りテキストデータ

目次

第1章 Rの導入とデータ入力
1.1 統計処理ソフトの選択
1.1.1 フリーソフト利用上の心得
1.1.2 Rの動作環境とインストール
1.1.3 Rの使い方の基本
1.1.4 プロンプトへの基本操作
1.2 データ入力
1.3 欠損値について
1.4 Rでの読み込みと基本操作
1.5 課題
第2章 基本的な図示
2.1 尺度と変数
2.2 名義尺度 (nominal scale)
2.3 順序尺度 (ordinal scale)
2.3.1 Cronbachのα係数
2.4 間隔尺度 (interval scale)
2.5 比尺度 (ratio scale)
2.6 データの図示の目的
2.7 名義尺度や順序尺度をもつ変数の図示
2.7.1 度数分布図
2.7.2 積み上げ棒グラフ
2.7.3 帯グラフ
2.7.4 ドットチャート
2.7.5 円グラフ(ドーナツグラフ・パイチャート)
2.8 連続変数の場合
2.8.1 ヒストグラム
2.8.2 正規確率プロット
2.8.3 幹葉表示 (stem and leaf plot)
2.8.4 箱ヒゲ図 (box and whisker plot)
2.8.5 ストリップチャート (stripchart)
2.8.6 散布図 (scatter plot)
2.8.7 レーダーチャート
2.9 その他のグラフ
2.9.1 塗り分け地図
2.10 課題
第3章 記述統計量
3.1 データを記述する2つの方法
3.2 中心傾向(Central Tendency)
3.2.1 平均(mean)
3.2.2 重み付き平均(weighted mean)
3.2.3 中央値(median)
3.2.4 最頻値(Mode)
3.2.5 使い分け
3.3 ばらつき(Variability)
3.3.1 範囲(range)
3.3.2 四分位範囲(Inter-Quartile Range; IQR)
3.3.3 四分位偏差(Semi Inter-Quartile Range; SIQR)
3.3.4 平均偏差(mean deviation)
3.3.5 分散(variance)
3.3.6 標準偏差(standard deviation)
3.3.7 標準誤差(standard error)と変動係数(coefficient of variation)
3.4 まとめ
3.5 課題
第4章 標本統計量と母数推定
4.1 標本統計量と母数
4.2 標本抽出
4.3 中心極限定理
4.4 信頼区間
4.5 自由度
4.6 課題
第5章 データの分布と検定の概念
5.1 はじめに
5.2 ベルヌーイ試行と2項分布
5.3 2項分布のシミュレーション
5.4 2項分布の理論分布
5.5 正規分布
5.6 χ2分布
5.7 t分布
5.8 F分布
5.9 検定の考え方と第一種,第二種の過誤
5.10 両側検定と片側検定
5.11 分布の正規性の検定
5.11.1 Shapiro-Wilkの検定
5.11.2 Gearyの検定
5.12 課題
第6章 2群の平均値の差の検定
6.1 母平均値と標本平均の差の検定
6.2 独立2標本の平均値の差の検定
6.2.1 母分散が既知で等しい$V$である場合(稀)
6.2.2 母分散が未知の場合(通常はこちら)
6.2.3 分散に差がない場合
6.2.4 分散に差がある場合(Welchの方法)
6.3 対応のある2標本の平均値の差の検定
6.4 課題
第7章 一元配置分散分析と多重比較
7.1 多群の平均値を比較する2つの思想
7.2 一元配置分散分析
7.3 検定の多重性を調整する「多重比較」
7.3.1 ボンフェローニの方法
7.3.2 ホルムの方法
7.3.3 テューキーのHSD
7.4 課題
第8章 相関と回帰
8.1 相関と回帰の違い
8.2 相関
8.2.1 見かけの相関・擬似相関
8.2.2 直線的な相関・直線に乗らない相関
8.3 回帰
8.3.1 決定係数
8.3.2 回帰直線推定と検定のしくみ
8.3.3 独立変数・従属変数と因果の向き
8.3.4 回帰式を予測に用いる際の留意点
8.4 課題
第9章 計数データと比率の解析
9.1 母比率を推定する方法
9.2 推定値の確からしさ
9.3 母比率の信頼区間
9.3.1 正規近似
9.4 カテゴリ2つの場合の母比率の検定
9.5 カテゴリが3つ以上ある場合の母比率の検定
9.5.1 少し複雑な例
9.6 サイコロの正しさの検定
9.7 2群間の比率の差
9.8 3群以上の比率の差
9.9 課題
第10章 クロス集計
10.1 複数のカテゴリ変数を分析するために
10.2 2つのカテゴリ変数の独立性の検定
10.2.1 クロス集計とは?
10.2.2 独立性のカイ二乗検定の原理
10.2.3 フィッシャーの直接確率(正確な確率)
10.3 研究デザインと疫学指標
10.3.1 頻度の指標
10.3.2 効果の指標
10.3.3 リスク比とオッズ比の点推定量
10.3.4 リスク比とオッズ比の95%信頼区間
10.3.5 関連性の指標
10.3.6 一致度の指標~κ係数
10.4 スクリーニングにおけるROC分析
10.4.1 ROC分析とは
10.4.2 計算手順を考える
10.4.3 Epiライブラリを使う方法
10.5 交絡を考える
10.5.1 シンプソンのパラドックス
10.5.2 交絡を制御するには
10.6 課題
第11章 量的データのノンパラメトリックな分析
11.1 2群の分布の位置の差に関するノンパラメトリックな検定
11.1.1 ノンパラメトリックな検定とは?
11.1.2 Wilcoxonの順位和検定
11.1.3 メディアン検定
11.1.4 符号付き順位和検定
11.2 多群間の分布の位置の差の検定
11.2.1 クラスカル=ウォリス(Kruskal-Wallis)の検定
11.2.2 フリードマン(Friedman)の検定
11.2.3 多重比較
11.3 課題
第12章 一般化線型モデル
12.1 一般化線型モデルとは?
12.2 モデルの記述法
12.3 変数の種類と数の違いによる線型モデルの分類
12.4 重回帰分析についての留意点
12.5 多重共線性(multicolinearity)
12.6 モデルの評価
12.6.1 残差分析と信頼区間
12.6.2 尤度比検定
12.6.3 AIC: モデルの当てはまりの悪さの指標
12.7 変数選択
12.8 採択されたモデルを使った予測
12.9 共分散分析
12.10 ロジスティック回帰分析
12.11 課題
第13章 生存時間解析
13.1 生存時間解析概論
13.2 カプラン=マイヤ法:survfit()関数
13.3 ログランク検定:survdiff()関数
13.4 コックス回帰──比例ハザードモデル:coxph()関数
13.4.1 二重対数プロット
13.4.2 コックス回帰のパラメータ推定
13.4.3 コックス回帰における共変量の扱い
13.5 課題
第14章 文献
14.1 Rに関する日本語の文献
14.2 Rに関する英語の文献
14.3 疫学・統計学についての文献
14.4 Rに関するウェブサイト
第15章 【課題解答例】

更新履歴


リンクと引用について