RESULT QCは、Rによる解析後に得られた表、図、推定値、モデル出力、実行ログ、結果文章を確認するスキルです。解析計画との一致、数値の内部整合性、コードやログとの対応、表示、解釈、追跡可能性を確認します。
目的と適用範囲
RESULT QCの目的は、提供された根拠の範囲で、解析結果が計画、コード、実行記録および解釈文へ整合しているかを評価することです。内部整合性確認、コードとの対応確認、再実行、独立再計算は異なる検証深度として区別します。
RESULT QCはコード全体の独立検証または統計解析の再プログラミングを自動的に含みません。実施していない検証を、再現確認または独立検証として報告しません。
開始条件
確認対象となる表、図、モデル出力、ログまたは結果文章のうち、少なくとも一つが必要です。計画適合性、コード対応、実行状態、再現性を判定する場合は、それぞれ対応する資料が必要です。
| 判定対象 | 必要な入力 |
|---|---|
| 表示・内部整合性 | 表、図またはモデル出力 |
| 計画適合性 | 結果+解析計画またはSAP |
| コード対応 | 結果+Rスクリプト |
| 実行状態 | 結果+実行ログ |
| 再実行 | データ+コード+実行環境 |
| 独立再計算 | データ+独立仕様+独立コード |
検証深度
確認範囲を次のレベルで区別すると、QC結果を過大評価しにくくなります。
| Level | 確認内容 | 主な限界 |
|---|---|---|
| 1 | 表・図・文章の内部整合性 | 生成元の正しさは確認できない |
| 2 | 解析計画またはSAPとの対応 | 実際のコード実装は確認できない |
| 3 | コード・ログとの静的な対応 | 同一結果の再生成は確認できない |
| 4 | 提供コードによる再実行 | コード自体の独立性はない |
| 5 | 独立仕様・独立コードによる再計算 | 元データと独立仕様の正確性には依存する |
レポートには、到達したレベルではなく、実際に確認した資料と実施した操作を記録します。同じ資料があっても、再実行していなければLevel 4相当とは扱いません。
使用するタイミング
- 集計表やグラフを作成した後
- 回帰モデル、生存時間解析、競合リスク解析を実行した後
- R MarkdownやQuartoで解析レポートを作成した後
- AIが結果説明文を作成した後
- 論文や報告書の結果節を書く前
- 共同研究者へ結果を渡す前
- Rの警告やエラーの影響を確認するとき
- 再解析が必要か判断するとき
解析計画またはSAP
↓
Rスクリプト作成
↓
Rによる解析実行
↓
RESULT QC
↓
必要に応じて修正・再解析
↓
報告書・論文作成
↓
人による統計レビュー
確認対象
- 記述統計表、クロス集計表、ベースライン表
- 群間比較、回帰モデル、生存時間解析の出力
- 累積発生関数、ハザード比、リスク比、オッズ比
- 信頼区間、p値
- サブグループ解析、感度分析、安全性集計
- Rスクリプト、コンソール出力、実行ログ
- R Markdown、Quartoなどのレポート
- 結果節のドラフトとAIが作成した解釈文
結果だけでなく、その結果を生成したコード、実行記録、解析計画、データセット情報も利用可能な範囲で確認します。
提供資料と確認できる範囲
| 提供された資料 | 主に確認できること |
|---|---|
| 表・図のみ | 内部整合性、表示、ラベル、解釈 |
| 表・図+解析計画 | 計画した出力との一致 |
| 表・図+Rコード | コードと結果の見かけ上の対応 |
| 表・図+コード+ログ | 警告、エラー、実行状況 |
| データ+コード+実行環境 | より強い再現確認 |
| 独立した検証コード | 独立再計算による数値比較 |
表だけの場合、表示値の内部整合性は確認できますが、その表が正しいデータやコードから生成されたことまでは確認できません。
確認する六つの領域
1. 計画した出力との一致
- 解析対象集団
- 評価項目と評価時点
- 比較群
- 統計手法と効果指標
- 信頼区間とp値
- 調整変数と層別因子
- サブグループ解析と感度分析
- 表や図の種類
- 主要解析、感度分析、補足解析の区別
主要解析がFASで規定されているのにPPSの結果だけが示されている場合などは、計画との不一致として扱います。
2. 数値の内部整合性
- 全体および群別の対象者数
- 除外者数
- 分子、分母、割合
- 行合計、列合計
- 欠測数
- イベント数、打ち切り数
- モデルごとの解析対象者数
- 丸めによる差
割合の分母が、解析対象者全体、欠測を除く対象者、評価可能者のどれかを明確にします。対象者数に差がある場合は、欠測除外、フィルター、解析対象集団などの理由を確認します。
数値確認では、再計算式、表示桁数、丸め規則を記録します。たとえば割合は、表示された分子と分母から再計算し、表示桁数に対応する丸めの範囲で一致するかを確認します。許容差が仕様で定義されている場合は、その値と根拠を使用し、QC担当者が任意の許容差を設定しません。
3. 推定値、信頼区間、p値
- 推定値の方向と比較の基準群
- 効果指標と尺度
- 信頼区間水準
- 推定値が信頼区間内にあるか
- p値との大まかな整合性
- 対数尺度と元尺度
- 調整済み・未調整の区別
たとえば、推定値が信頼区間に含まれない場合は、表示、尺度変換、比較方向、転記を確認します。
4. コード・ログとの一致
- 使用したデータセット
- フィルター条件と解析対象フラグ
- 群変数と基準カテゴリ
- 変数の作成方法
- 欠測値の処理
- モデル式、共変量、層別因子
- 信頼区間の計算方法
- 使用したパッケージ
- 出力ファイルとラベル
結果表に「年齢・性別調整」と記載されていても、モデル式に年齢と性別がなければ不一致です。
実行ログでは、エラー、警告、読み込み件数、除外件数、Rとパッケージのバージョン、乱数シード、モデルの収束、特異行列、完全分離、強い共線性、モデル仮定などを確認します。
コードと結果を対応付ける場合は、少なくとも入力データ、対象者抽出、変数導出、モデル式、出力生成処理、保存先を追跡します。コードが存在することだけを、表示結果を生成した根拠とは扱いません。
RESULT QCとコードQCの違い
RESULT QCは、結果とコードの対応を確認します。コード全体のすべての分岐や例外処理を独立して検証するものではありません。元データから独立したコードで再計算しない限り、計算結果そのものの独立検証とは扱いません。
AIによる仮定リスク
| 不足情報 | 起こり得る仮定 | 主な影響 |
|---|---|---|
| 分母が不明 | 表示された総数を分母とする | 割合の意味が変わる |
| Rコードがない | 表示値が正しく計算されたとみなす | 計算誤りを確認できない |
| 実行ログがない | 正常終了したとみなす | 警告やエラーを確認できない |
| 群の方向が不明 | 最初の群を基準とする | 効果の方向を誤る |
| 研究デザインが不明 | 因果効果として説明する | 結果を過度に解釈する |
確認できない場合は、推測せず未確認事項として記録します。
判定規則と根拠要件
各ドメインにはOK、Needs clarification、Problem、Cannot assess、Not applicableを使用します。
- 主要結果の対象集団、群ラベル、評価項目またはモデルが計画と異なる場合は、通常CriticalまたはMajor
- 主要モデルが未収束、または結果の解釈を妨げる警告が未解決の場合、報告・解釈を
Readyにしない - コードまたはログが提供されていない場合、当該ドメインを
Cannot assessとし、結果の計算正確性を推定しない - 数値は正しいが表示要件だけが不足する場合、影響に応じてMinorまたはNote
- 再解析が必要なIssueと、表示または文章修正だけで解決できるIssueを区別する
Evidenceには、表・図番号、セルまたは行ラベル、モデル名、出力ファイル名、Rスクリプト名と処理ラベル、ログの警告、計画の節、再計算式を記録します。長いログやsessionInfo()は別ファイルとして参照し、レポートへ全文を貼り付けません。
出力ファイル
ai_project/qc/result-qc-001.md
再レビューではresult-qc-002.mdのように番号を増やし、以前のレポートを残します。
レポートには、総合判定、次の作業ごとの準備状況、確認資料、六領域の評価、問題一覧、確認できない項目、仮定リスク、ユーザーへの質問、推奨対応、次工程への引き渡しを含めます。
出力スキーマ
標準レポートは次の12セクションで構成します。
- Skill information
- Overall judgment
- Readiness by next step
- Materials reviewed
- Domain assessment
- Issues
- Cannot-assess items
- AI assumption risks
- Required clarification questions
- Recommended next actions
- Quick assessment
- Handoff to next workflow step
Issues表にはID、Severity、Issue、Evidence、Recommended actionを含めます。再解析が必要な場合は、変更対象、再実行対象、無効になる既存出力をRecommended
actionまたはHandoffに明記します。
QC後の対応
| 見つかった問題 | 主な対応 |
|---|---|
| 変数、行単位、対象集団が不明 | CONTEXT QCへ戻る |
| 一般的な解析仕様が曖昧 | PLAN QCへ戻る |
| 臨床試験の統計仕様が曖昧 | SAP QCへ戻る |
| コードと結果が一致しない | Rスクリプトを確認する |
| コード、データ、条件を変更した | Rで再解析する |
| 数値は正しいが表示が不十分 | 表や図を修正する |
| 結果文章が不適切 | 結果文章を修正する |