Be lazy with teal

10min. + QA 3min.

西川寛来

2024-03-22

はじめに

自己紹介

  • 西川寛来
    • LinkedIn
    • 製薬業界でデータ分析、ツール作成
    • Rが好き 😊
    • SASもやっていく 💪

こんな話をします 🙆‍♂

  • 製薬業界でRを使うこと
  • Shinyとはなにか
  • tealというフレームワークについて

こんな話はしません 🙅‍♂

  • Rとはなにか
  • 統計の話
  • SASについて

製薬業界でRを使うこと

承認申請にRを使ってみようよ

という流れが、FDA中心に少しずつ来ています 😺

Why R?

https://phuse.global/Communications/PHUSE_Blog/why-r

SAS works. If it isn’t broken, WHY fix it?
WELL, THEY’RE RIGHT – AND THEY’RE WRONG…

Become a top performer

(...), do you want to be a passenger and just run code provided by someone else, 
or do you want to be a mechanic and be able to develop and manage that code yourself?
Embrace this opportunity to become a top performer and help do your part to drive the industry forward.

Very very Atsui…

Why R?

https://github.com/phuse-org/OSTCDA/discussions/2

https://www.appsilon.com/post/r-vs-sas-pharma-life-sciences

Why R?

真面目な会議ではここらへんを言っておくと吉

  • 新規手法がすぐに実装される
    • ベイズ、因果推論まわり、LLMも組み込めるかもよ
  • ドキュメント作成の自動化
    • R Markdown, Quarto
  • Transparency
    • ユーザ自身でコードのリスク評価を行う
  • コミュニティの大きさ・教材の多さ
  • 人材獲得の優位性

Shiny とは

Shiny とはなにか

  • RでWebアプリケーションを作るためのフレームワーク
  • ある程度の慣れは必要
    • ChatGPTはShinyが得意な印象
    • HTML, CSS, JavaScriptは知らなくてもOK

Shinyのサンプルをみせて

医療に関連するものを集めました

Shinyに入門するためのリンク

tealとは

teal とはなにか

GitHub

teal とはなにか

  • Rのパッケージ
  • 探索的な解析、可視化のアプリを作るフレームワーク
  • Roche/Genentechが中心のInsights Engineeringというコミュニティで開発
  • RでFDAへの承認申請を行う見本例 Submission Pilot2での採用実績あり

最近 CRAN から使えるように 🥳

  • Pharmaverse blog
  • 何も考えず install.packages("teal") でいけます
  • 以前は依存パッケージまわりがツラかった

teal が動くところを見たい 🙋‍♂️

teal 実装の雰囲気

modules = modules(
  tm_data_table("Data Table"),  # データセットを表示
  tm_variable_browser("Variable Browser"),  # 各変数の分布
  tm_t_summary("Demographic Table", ...),  # Characteristics
  tm_g_km(  # Kaplan-Meier plot
    label = "Kaplan Meier Plot",
    dataname = "ADTTE", ...
  )
)
  • 臨床試験の解析の”あるある”をモジュールとして用意

teal が動くところはここにも

teal が使える Docker を作りました

  1. Boxからダウンロード、解凍
  2. docker compose up
  3. localhost::3838から各サンプルアプリにアクセス
  • localhost::8787からRstudio Serverにアクセス

teal でできること

  • 様々な解析・可視化を叶えるモジュール
    • 生存時間分析、主成分分析とかもある
  • 機能のカスタマイズ
    • 分析、可視化の方法
    • データのダウンロード
    • レポート作成
  • CDISC準拠データだとさらに楽
    • e.g. “USUBJID”とか指定せずに勝手に判別

Laziness について

  • プログラマの三大美徳「怠惰、短気、傲慢」
  • 怠惰-laziness: 全体の労力を減らすために努力を惜しまない
    • tealのコンセプトはこれを体現している
      • 「臨床試験データの可視化」全体の労力を減らす!

teal のツラい点

teal のツラい点

teal のツラい点

  • Cherry-pickingの懸念
    • 事後的に都合の良い結果を探し出してしまう
    • Submission Pilot2に対してFDAの方が言及していた
      • 探索的な解析を気軽にたくさんできてしまう
      • ツールというか教育の問題?

まとめ

Be lazy with teal

  • ツラいこともある 🥲
    • アプリ作成までのイニシャルコストは高め
    • 土台の学習も必要(R, Shiny, パッケージ管理, Docker, …)
  • 全体効率を考えると嬉しい 😊
    • 「事後解析はそっちで勝手にやって」ができる
    • CDISC準拠データは、他試験にスケールしやすい
      • 一度作成すれば、以降はデータの前処理を行うだけ
      • 解析・可視化用のモジュールは準備されている

tealやっていきましょう 💪

おわり 😊

以降参考文献です

teal に関して役立つリンク

Docker 作成で参考にしたリンク

CDISC データセットが使えるパッケージまとめ