統計学と疫学と時々、助教生活

疫学を専門とする助教の研究に関する備忘録的ページ。

【2021年夏】データの可視化おすすめ書籍5選|アカデミア版

データの可視化に関する書籍+論文を簡単なレビューとともに紹介したいと思います(2021年9月1日現在)。

【R】gtsummaryで回帰分析の表を結合する(tbl_stack編)

gtsummaryパッケージのtbl_stack関数についてまとめています。

【R】gtsummaryで回帰分析の表を結合する(tbl_merge編)

gtsummaryパッケージのtbl_merge関数についてまとめています。

【R/R Studio】YouTubeチャンネル開設しました(Rとの出会いや使い続ける理由なども...)

先日、YouTubeチャンネルを公開しました。このブログでも、R for begginerとして5回に分けたコードの共有をしましたが、初心者向けの動画を改めてYouTubeにまとめることにしました。www.youtube.com ちょっとだけ、その経緯などを残しておきます。 1. YouTub…

R package "JM"を使用してJoint modelを実装する。

前回は生存解析においてベースラインだけでなく、縦断的に測定している(繰り返し測定、反復測定値ともいう)値の影響も組み込んだ「時間依存性共変量」についてまとめました。今回は、さらに進化した(個人的見解です)Joint modelについて、簡単な紹介とR…

R package "survival"を使用した生存時間解析(ベースライン情報のみか時間共変量も組み込むか)

Rのsurvivalパッケージを使用した生存解析について、時間依存性共変量を組み込んだモデルと通常モデルの比較を行なっています。

主成分(PC)を考慮したLasso回帰(principal components lasso: pcLasso)

今回は正則化で目にするLasso回帰の拡張であるprincipal components lasso (pclasso)についてRのパッケージをまとめておきます。Lassoをはじめとして正則化回帰のベーシックな内容はこちらで復習 jojoshin.hatenablog.com 1. pLassoとは? 罰則項の一部が第…

DNAメチル化に基づく生物学的な年齢(Epigenetic Clock theory)【後編】

今回は、前回に引き続いて「Epigenetic clock」についてUCLAのDr. Hovarthによるレビューの後半をまとめていきたいと思います。主な内容は、「年齢的な変化との関連」や、「組織・細胞レベルとの関連性」、「介入による若返りは可能?」、「この方法における…

DNAメチル化に基づく生物学的な年齢(Epigenetic Clock theory)【前編】

今回は、「Epigenetic clock」についてUCLAのDr. Hovarthによるレビューをまとめておきたいと思います。この研究がどのような未来をもたらし得るかみてみましょう。その前編として、「Epigenetic clock」はどのような学術的背景から注目されたのか、そしてど…

予測式:ロジスティック回帰か、それとも機械学習か?

かなり久方ぶりの記事になりますが、今回はJournal of Clinical Epidemiologyに先日アクセプトになった”A systematic review shows no performance benefit of machine learning over logistic regression for clinical prediction models”について、簡単に…

Mendelian randomization(メンデルランダム化)とは

今回は、遺伝疫学でも近年注目されているmendelian randomization(以下:MR)について、情報を集約し簡単なまとめをしておきます。MRは、経済学や社会調査の解析において利用されてきた操作変数(instrumental variable)を導入した解析方法の一種でありま…

R package "rworldmap"を使用して世界地図に色をつける

こんにちは。世界地図にデータに基づいて色をつけてたいと思ったことはないでしょうか。プレゼンや研究発表など様々な場面で描画したいと思う機会があるでしょうが、今回はそんな時に自分で作成できるパッケージ'rworldmap'を紹介します。今回は事例として、…

連続値データから二値データに変換するときの問題

こんばんは。今日は統計解析において議論の的になる「二分法(dichotomization)について」記事を書いておきます。僕のように医学をメインにデータ解析をする人には馴染みの深い問題かと思います。「二分法」の問題については、最近日本語の訳書が発売された…

リッジ回帰による多重共線性の問題回避について

今回は、リッジ回帰によって多重共線性の問題を回避できることを簡単にまとめておきます(わかりやすくまとめたつもりです)。先日(4/28)の記事で紹介した『リッジ回帰を用いた異常検知』で、「リッジ回帰は、多重共線性の問題を回避できる」という性質に…

R 時系列データの異常部位検出(近傍法)

今回も先ほど公開した記事と同様に、『入門機械学習による異常検知-Rによる実践ガイド-』(コロナ社、井出剛著、2015)の中にある「7.1 近傍法による異常検知」ということで、この内容をなぞり、最後に時系列データ解析の際に重要になる窓幅(どれだけの地点…

R リッジ回帰モデルと異常検知

今回は、『入門機械学習による異常検知-Rによる実践ガイド-』(コロナ社、井出剛著、2015)の「6.3 リッジ回帰と異常検知(P165-172)」の内容をもとに政府・官公庁データをもとにして作成した都道府県別の10万人あたりの自殺者数を予測するモデルを作成し、…

R 重複のある列に順位をつける

今回は『R役に立つ小技5選』シリーズに入れようか迷った内容ですが、こまめに記事にしたいということで単独で掲載することにします。 そもそもの発端は、「〇〇くん、これに順位をつけたいんだけど、うまくいく方法はないか」という疑問からでした。「これ」…

R bioconductor"snpStats"を使用した、PLINKフォーマットのデータからRのデータに変換する

今回は、PLINK特有のファイルフォーマットである.bed、.bim、.famからRでの処理に適した形式に変換するbioconductorのsnpStatsというパッケージについて説明する。PLINKでの解析については、過去の記事1, 2をご参考にして頂きたい。今回使用するデータはこの…

アメリカにおける個人の遺伝子検査サービスに関する消費者の意識調査

今回は、文献の紹介をするとともに、個人の遺伝子検査サービス前後で消費者の意識がどのように変わっているかを紹介したい。論文のタイトルはDirect-to-Consumer Genetic Testing: User Motivations, Decision Making, and Perceived Utility of Resultsであ…

R package "BLR"でベイジアンラッソ(Bayesian Lasso regression)

あけましておめでとうございます(疫学会や予防早期医療創成センターのワークショップ等への参加もあり、一ヶ月ぶりの更新です)。 今回はRのパッケージ"BLR"を用いて、ベイジアンラッソを実行する。ちなみに参考にするのは、Cedric Gondroらによる『Genome …

R データの読み込み(高速化)

今回はSpringerから出ている『Genome-Wide Association Studies and Genomic Prediction』という本からデータの読み込みについて記述する。GWASなどのゲノムデータは非常に膨大であり、読み込みだけでもかなりの時間を要する。そこで下記のTipsで幾分改善さ…

PLINKで共変量を加えたassociation testを実行する。

今回は、9月22日の記事に加えて、共変量で調整する(その他の細かい設定もする)GWASについてコマンドを記しておく。 jojoshin.hatenablog.com 最も簡単なコマンド plink --bfile データ名 --assoc --out アウトプットするデータ名 共変量を加えたロジスティ…

レアバリアント解析

今回はレアバリアント解析についてまとめた資料を公開しておきます。 このスライドの内容 内容は、Lee S, et al (2014) Rare-variant association analysis: Study designs and statistical tests. Am J Hum Genet. をもとにしています。他にも日本語の書籍*…

朝型人間(morningness)の遺伝的な要素とは...

今日は朝型人間(Morningness)を規定する遺伝子の紹介です。(結果が膨大なので、交互作用やpathway解析の部分は省略していますので、もし気になる方は本文をご参照下さい。また、かなり学術的な解説なので、あまりお勧めはしませんが、簡単な解説をご希望…

R package"VennDiagram"でベン図を書く

今日はベン図を描きたいと思います。 (今回は例として、東海三県での多い名字30位についてベン図を書いてみようと思う) パッケージの読み込み library(VennDiagram) まずはベン図で書きたいそれぞれのカテゴリに含まれる要素を書き出す aichi <- c("鈴木","…

R 2つのリストを比較する関数(intersect、setdiff)の紹介

今日はリストを比較する時に役にたつコマンドを紹介します。 これらは膨大なリストを扱う際に、「共通のものを抽出する」「片方に特有のものを抽出する」などに非常に役に立ちます。 早速、実践 下記のようにAとBのリストが与えられているとする。 #AとBそれ…

R package'metap'を使用して、p値の統合をする

こんにちは。今回は異なる環境や場所で行った同様の実験や研究によって導かれたp値を統合しようという試みがあった時の対処法について、Fisher's methodを取り上げて、今回は説明します。 FIsher's methodとは i個あるp値のlogをとった値を足し合わせて、そ…

PLINKでGWAS(basicなcase/control study)をするコマンド

今回はPLINKで典型的なSinge-SNP GWAS(アレルベースのカイ2乗検定)を実施する。元々、plinkが使えるディレクトリ内にbim,bed,famファイルが生成されていることが前提条件である。その他の方法についてはまた別の機会に書くことにする。 コマンド plink --b…

日本人における集団の構造化(Population stratification in Japan)

こんばんわ。今日は以前の投稿でも取り扱ったGWASのcase-control studyで問題となり得る「集団の構造化(以下PF)」について書きます。今回は『Japanese Population Structure, Based on SNP Genotypes from 7003 Individuals Compared to Other Ethnic Grou…

R package 'SKAT'を用いて、SKATを実行する vol.2

こんばんは。前回のSKATの記事の内容に少し付け加え(Kernelの種類を増やして検討しただけ)をします。基本的な解析は前回の記事をご参照下さい。 jojoshin.hatenablog.com はじめに 前回の記事にも記載した通り、SKAT()は二値のアウトカムには適しておらず…