統計解析Rの使い方を医療従事者向けに解説

統計解析にRを使いたい医療従事者向けに、インストールから基本操作・t検定・回帰分析まで実践的な使い方をわかりやすく解説します。SPSSとの違いや医療現場での活用法も紹介。あなたの臨床研究は今のやり方で本当に正しいですか?

統計解析Rの使い方:医療従事者が今すぐ始める完全ガイド

🔬 この記事の3つのポイント
💰
R言語は完全無料

SPSSなど有料ソフトの年間ライセンスは数万円〜数十万円かかりますが、Rは0円で同等以上の統計解析が可能です。

📊
医療統計に必要な機能が揃っている

t検定・カイ2乗検定・生存解析・ロジスティック回帰など、論文執筆や学会発表に必要な解析がすべてRで実施できます。

🚀
初心者はRStudioとEZRから始めるのが最速

コードを書かずマウス操作で始められるEZR(Easy R)を使えば、統計の知識がなくても基本的な解析をすぐに実行できます。


SPSSなどの有料ソフトを使い続けているなら、年間数十万円を余計に払っているかもしれません。 mmbiostats(https://mmbiostats.com/statistics_software_2)


医療従事者が統計解析を行う場面は、学会発表・論文執筆・院内研究など多岐にわたります。しかし「統計ソフトは高い」「コードが難しそう」という思い込みから、有料ソフトに頼り続けているケースが少なくありません。この記事では、無料で使えるR言語の使い方を、医療従事者目線でゼロから解説します。 kinpodo-pub.co(https://www.kinpodo-pub.co.jp/book/2005-4/)


統計解析RとRStudioのインストール手順


RはCRAN(https://cran.r-project.org/)から無料でダウンロードできます。 インストールの手順は以下の通りです。 htsuda(https://htsuda.net/stats/intro.html)



  1. CRANのサイトにアクセスし、「Download R for Windows」または「Download R for macOS」を選択する

  2. 「base」をクリックし、最新版(例:R-4.4.3)のインストーラーをダウンロードする

  3. ダウンロードしたファイルを実行し、すべてデフォルト設定のまま「次へ」で進める

  4. Rのインストール完了後、RStudioのダウンロードページ(https://posit.co/download/rstudio-desktop/)からRStudioを追加でインストールする


RとRStudioはセットで使うのが基本です。 RはいわばエンジンでRStudioは操作パネル。RStudioを介することで、コードの入力・実行・グラフの確認・ファイル管理を一画面で完結できます。Windowsをお使いの場合、ユーザー名に日本語が含まれているとパッケージのインストール時にエラーが起きやすいため、Cドライブ直下などに英語のパスでインストールすることをおすすめします。 note(https://note.com/toshi_matsuura/n/n127cf28362e5)


RStudioをインストールしたら、まず左下の「Console(コンソール)」に 2 + 2 と入力してEnterを押してみてください。

4 と返ってきたら正常に動作しています。これで準備完了です。 kinpodo-pub.co(https://www.kinpodo-pub.co.jp/book/2005-4/)


統計解析Rの基本操作:データ読み込みから集計まで

Rでの統計解析は、大きく4つのステップで進みます。 best-biostatistics(https://best-biostatistics.com/r/r_statistical_analysis.html)



  • 📂 データを読み込む:ExcelやCSVファイルを read.csv("ファイル名.csv") で取り込む

  • 🔧 データを加工する:欠損値の除去・変数の変換・グループ分けなど前処理を行う

  • 📐 統計モデルを適用する:t検定・回帰分析・カイ2乗検定などの関数を実行する

  • 📈 結果を可視化・出力する:グラフや表を生成し、論文・発表資料に使える形に整える


たとえば患者データをCSVで保存しておけば、以下のコードだけで読み込みが完了します。


data <- read.csv("patient_data.csv")

head(data) # 最初の6行を確認
summary(data) # 基本統計量を一括表示


summary() を実行すると、各変数の最小値・中央値・平均値・最大値が一度に表示されます。つまり基本統計量の確認は1行で終わります。 ExcelでSUM関数を何十セルにも入れていた作業が、Rでは瞬時に完了する感覚です。 best-biostatistics(https://best-biostatistics.com/r/r_statistical_analysis.html)


【参考:Rで統計解析の基本的な使い方ステップ解説 – Best Biostatistics】


統計解析Rでt検定・カイ2乗検定を実行する方法

医療従事者が最初につまずくのが「どの検定関数をどう書くか」です。これはシンプルです。 best-biostatistics(https://best-biostatistics.com/stat-test/paired-unpaired.html)


よく使う主な検定関数は以下の通りです。









検定の種類 Rの関数 主な使用場面
対応なしt検定 t.test(x, y) 2群間の平均値比較(例:治療前後の比較以外)
対応ありt検定 t.test(x, y, paired=TRUE) 同一患者の治療前後を比較する場合
Wilcoxon検定 wilcox.test(x, y) 正規性が成立しない場合の2群比較
カイ2乗検定 chisq.test(table(A, B)) カテゴリカル変数の独立性検定


対応ありt検定の具体例を見てみましょう。治療前と治療後のデータが列として保存されている場合、以下のコードで結果が出ます。 best-biostatistics(https://best-biostatistics.com/stat-test/paired-unpaired.html)


result <- t.test(data$before, data$after, paired = TRUE)

print(result)


p値・95%信頼区間・平均差が一括で表示されます。厳しいところですね。初学者がExcelの分析ツールで格闘していた時間が、わずか2行のコードで完結します。正規性を確認したい場合は shapiro.test() を事前に実行するのが原則です。 best-biostatistics(https://best-biostatistics.com/stat-test/paired-unpaired.html)


【参考:対応のあるデータ・対応のないデータのt検定とWilcoxon検定の実装例 – Best Biostatistics】


統計解析Rで回帰分析・ロジスティック回帰を実践する

臨床研究で頻繁に登場するのが多変量解析です。Rではこれも数行で実行できます。 nissinbo.github(https://nissinbo.github.io/medical_database_RBook/%E7%B5%B1%E8%A8%88%E8%A7%A3%E6%9E%90.html)


単純な線形回帰(重回帰)は lm()、ロジスティック回帰は glm() 関数を使います。 nissinbo.github(https://nissinbo.github.io/medical_database_RBook/%E7%B5%B1%E8%A8%88%E8%A7%A3%E6%9E%90.html)


# 重回帰分析(例:血圧を年齢・BMI・喫煙で予測)

model_lm <- lm(血圧 ~ 年齢 + BMI + 喫煙, data = data)
summary(model_lm)


# ロジスティック回帰(例:疾患の有無を複数の変数で予測)
model_logit <- glm(疾患 ~ 年齢 + 性別 + CRP, data = data, family = binomial)
summary(model_logit)


summary() の結果には各変数の係数・標準誤差・p値が表示されます。これは使えそうです。ロジスティック回帰ではオッズ比が必要なため、exp(coef(model_logit)) でオッズ比を算出するのが条件です。 nissinbo.github(https://nissinbo.github.io/medical_database_RBook/%E7%B5%B1%E8%A8%88%E8%A7%A3%E6%9E%90.html)


さらに broom パッケージの tidy() 関数を使えば、解析結果をそのままデータフレームに変換でき、論文用の表に整形する手間が大きく省けます。 nissinbo.github(https://nissinbo.github.io/medical_database_RBook/%E7%B5%B1%E8%A8%88%E8%A7%A3%E6%9E%90.html)


library(broom)

tidy(model_logit, conf.int = TRUE, exponentiate = TRUE)
# オッズ比と95%信頼区間を整形した表として出力


多変量解析を適切に行わないと、交絡因子を見落としたまま誤った結論を導くリスクがあります。 たとえば「新規治療群でCRP値が高い」という結果が出ていても、年齢や性別の偏りを調整していなければ意味がありません。回帰分析でしっかり調整するのが基本です。 note(https://note.com/paguinu/n/n34acd7b3865e)


【参考:医療情報DB解析のためのデータハンドリング大全(第7章 統計解析)】


統計解析Rを医療現場で使いこなすためのEZRとパッケージ活用術

「コードが難しい」と感じる場合は、EZR(Easy R)から始めるのが最速です。 best-biostatistics(https://best-biostatistics.com/spss/spss-same.html)


EZRは自治医科大付属さいたま医療センターが開発した無料ソフトで、Rの上にGUI(マウス操作インターフェース)を追加したものです。 生存解析・ROC曲線・メタアナリシス・サンプルサイズ計算など、臨床研究で必要な解析がメニューから選ぶだけで実行できます。意外ですね。SPSSと操作感がほぼ同じなのに、EZRは0円で使えます。 jichi.ac(https://www.jichi.ac.jp/usr/hema/EZR/statmed.html)



  • 🏥 EZR:マウス操作で生存解析・ROC曲線・メタアナリシスが可能。医療従事者に最も人気
  • best-biostatistics(https://best-biostatistics.com/spss/spss-same.html)


  • 📦 tidyverse:データ整形・可視化の最強パッケージ群。
    ggplot2 で論文クオリティのグラフが作れる
  • best-biostatistics(https://best-biostatistics.com/r/r_statistical_analysis.html)


  • 📋 tableone:臨床研究の「Table 1」(患者背景表)を自動作成するパッケージ
  • note(https://note.com/bostonlungmd/m/m6261335000fe/hashtag/23072)


  • 🔬 survival:Kaplan-Meier曲線やCox比例ハザードモデルを実装する医療統計の必須パッケージ
  • 88clinic.jimdoweb(https://88clinic.jimdoweb.com/%E4%BA%A4%E9%80%9A%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9/%E5%B0%82%E9%96%80%E5%8C%BB-%E8%AA%8D%E5%AE%9A%E5%8C%BB%E5%8F%96%E5%BE%97%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6/%E5%8C%BB%E5%B8%AB%E3%82%84%E7%A0%94%E7%A9%B6%E8%80%85%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AE%E7%B5%B1%E8%A8%88/)


パッケージのインストールは install.packages("パッケージ名") の1行で完了します。 読み込みは library(パッケージ名) で行います。一度インストールすれば次回からは library() だけで使えます。つまりインストールは1回だけ実行すれば大丈夫です。 note(https://note.com/toshi_matsuura/n/n127cf28362e5)


有料ソフト(SPSS・SASなど)は年間数万〜数十万円のライセンス費用が発生しますが、Rとそのパッケージはすべて無料です。 研究費が限られる若手医師や理学療法士にとって、この差は非常に大きいです。 mmbiostats(https://mmbiostats.com/statistics_software_2)


【参考:無料統計ソフトEZR(Easy R)公式ページ – 自治医科大学】






医学研究のためのRによる統計解析入門[本/雑誌] / 加葉田大志朗/著 新谷歩/監修