読者です 読者をやめる 読者になる 読者になる

疫学と医療統計学と遺伝学と時々、大学院生活

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

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

こんばんは。今日は統計解析において議論の的になる「二分法(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 欠損値の対応(missing value treatment)

今回は、欠損値の発生する理由を紹介し、その後に書籍を参考に欠損値に対応するRのコードを紹介します。 医学研究だけでなく、様々な調査をしていると欠損値(missing value)に出会います。欠損値が発生しているメカニズムによっては、結果を大きく変える可…

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()は二値のアウトカムには適しておらず…

大学院生活で学んだこと(第11回日本臨床検査学教育学会学術大会発表内容)

こんばんは。更新が一ヶ月以上空きました(学会等のアウトプットに追われていました)。今回はそのアウトプットの一つで発表した内容について共有します。 どんな学会で発表したか? 第11回日本臨床検査学教育学会学術大会・臨床検査技師の大学院教育を考え…

企業家精神(entrepreneurship)の遺伝的な要素とは...

だいぶ更新の時期が空きましたが、研究の方が順調に進んでいるという証拠だと個人的にはポジティブに捉えているところです。今回は文献紹介です。特に学術的な「面白さ」というよりは社会的な「面白さ」で題材を選びました。GWASというのはこれまでもご説明…

Multivariate と Multivariable(どちらも多変量)の違いについて

MultivariateもMultivariableってどっちも「多変量」? こんな疑問を持ったことのある人もいるのではないかと思います。確かに、"Multivariate"と"Multivariable"のどちらも辞書では「多変量」となります。疫学や公衆衛生の分野だけでなく、共変量で調整した…

罰則付き・正則化回帰モデルについて(About penalized/regularized regression model)

久しぶりの更新になりました。6月末の北海道でのISEE-ISES AC2016への参加とその後は論文執筆に集中していました。ISEE-ISESのアジア支部総会では、pre-conference workshopにも参加し、distributed lag non linear model(DLNM)という時系列分析の一種を学…

「論文の図って大事だぞ!!(特に小標本の場合)」っていう論文の紹介

クイズ:これ何を意味している図でしょう? どうもこんばんは。みなさん冒頭の棒グラフとその横のデータの分布を示した図の意味は分かったでしょうか。結論から言えば、右のようにデータの分布が異なっても、実は同じ棒グラフになるという事例でした。 (も…

R for beginners vol.5(最終回)「検定と回帰分析」

今回で全5回のR for beginnersの最終回です。 最後は統計解析の醍醐味ですが、「検定と回帰分析」について書きます。 【今日の狙い】 統計学な検定や回帰モデルをRで実行できるようになる。 sample <- read.csv("sample.csv", sep=",", header=T) #attach()…

R for beginners vol.4 「データの要約とビジュアライゼーション」

今回はデータの整頓から少し分析に近いことを始めます。その中でデータを要約し、図示することが解析の一歩かと思い今回の内容にしています。R for beginners vol.1 「Rの紹介と基本的なコマンド」 jojoshin.hatenablog.comR for beginners vol.2 「データの…

mach2datのアウトプット vol.1

今日は以前のエントリで解説したインピュテーションされたGWASデータ(調整項目を指定したロジスティック回帰)を解析するmach2datによって出力されるデータの解釈について、記述する。(確か、前回はREAD ME読んでくださいとか言って、解説をしていませんで…

RでSteel-Dwass(スティールドゥワス)検定をする

今日はノンパラメトリックな多重比較の一例として、Steel.Dwass testのRでの実行方法を記載する。 (2016年6月13日にコメントされたようにsteel-dwassについてNSM3パッケージにあるコマンドについて追記した。) 方法1 Steel.dwass検定は下記のHP(群馬大学…

R for beginners vol.3 「データのクリーニングと編集」

今回は先週のデータ入力や出力に続いて、実際の解析を行うにあたって必要なNAの除外や列の追加などのコマンドを学習する。 (今回で3回目であるが、この5回のコースは初心者Rユーザーのためのものであり、基本的な内容で構成されていることを再度確認してお…

R package'tableone'のCreateTableOne関数で表1を書く

今回は疫学などヒトを対象とした研究で対象者の特性として、主な変数の要約することが多くありますが、その表1(table1)を描き、csvとして出力できる便利な関数の紹介です。 その便利な関数はCreateTableOne()関数です。(パッケージはtableoneと言うもので…

Rで残差補正された値を求める

Rの例としてよく使用されるirisデータを用いて、残差を簡単に求める。 特に今回は例として、Sepal.Length(がくの長さ)とSepal.Width(がくの幅)について、残差を求める head(iris) ## Sepal.Length Sepal.Width Petal.Length Petal.Width Species ## 1 5.…

R for beginners vol.2 「データの入出力とサブセット」

今回は前週に引き続き、第2回「Rのデータセットの扱い方(入力と出力及びサブセット)」に移る。R for beginners vol.1 「Rの紹介と基本的なコマンド」 jojoshin.hatenablog.com 【今回の狙い】データの取り込み、書き出し方法やデータセットの整理ができる…

R for beginners vol.1 「Rの紹介と基本的なコマンド」

今回から全部で5回ほどに分けて、Rの基本をマスターできる記事(全くの知識がない者向け)を一週間おきに公開する。 Rのコマンド等は言うまでもなくたくさんの方が公開されているので、そちらを参照して頂いた方が良いかもしれない。 一回あたり1.5hを目安に…

R ダミー変数を使用した回帰分析?

今回も比較的簡単な内容であるが、ダミー変数を使用した回帰分析について記録しておく。 ダミー変数は例えば、男女をそれぞれ0,1と与えたものである。性別の水準(level)は男と女の2つであり、ダミー変数は1つで良い。 一方で、「低」「中」「高」のように3…

R 役に立つ小技5選 vol.3

今回は第3回目となる『R役に立つ小技5選』についての記事です。 前回と前々回の記事は下にリンクがあるので、ご参照ください。 No.1 Macを使用して、Rでグラフを日本語で書くと、文字化けするのを解消する方法 par(family="Osaka") hist(データ名, xlab="x軸…

Genetic model (遺伝モデル)とは

今回は特定の遺伝継承のパターンであるGenetic modelについて、記述する。 ここではよく扱われる4つのパターンの性質を定義する。 前提条件 AとBというアレルを持つマーカーMを仮定する。 マーカーMの遺伝子型は、、と表記する。 アレルの頻度は、と表記する…

Rで遺伝子多型とアレルの頻度を算出するコマンド:genotype()

今日はあるSNP(一塩基多型)の遺伝子多型とアレルの頻度を算出するコマンドを紹介する。今回は2016年1月に発売された『実践でわかる!Rによる統計遺伝学』の内容も参考にしている。 初めに 今回使用するデータを丸善のサポートページ(http://pub.maruzen.co…

Rでポアソン回帰分析

今回はRで学ぶデータサイエンスシリーズ『カテゴリカルデータ分析』の第7章ポアソン回帰分析のついてまとめる。 (超基本かと存じます) はじめに ポアソン分布というのは交通事故に代表されるように、その事象が発生する確率が極めて小さい事象に関する分布…

Rでlag effectを探索するときのベクトル生成

今回は気温や湿度、大気中の汚染物質が我々の健康に及ぼす影響について分析する際に用いたいLag effectについてのベクトル生成について記述する。Aというベクトル(1から100までの長さ100のベクトル)に関して過去15日の指標を蓄積したベクトルを作成すると…

R package 'estatapi'を使用して、公開されている政府統計を取得、解析する

今回は先日公開されたばかりのRパッケージ'estatapi'を使用して、政府統計を取得し、可視(グラフ)化する。 ちなみに参照する統計表は様々な行動の時間などを収録している社会生活基本調査ということのみ決めておく。 (注意)横に大きなデータは見づらくて…

IBM Edge2015でのPharmacogeneticsに関するプレゼンテーション

今回はIBM Edge2015でのPharmacogenetics(ゲノム薬理学)による個別化医療に関するScott Megill, CEO of Coriell Life Sciencesのpresentationを紹介する。すぐにご覧頂けるように、動画はこのサイトに埋め込んでおきました。www.youtube.com ご覧できない…

American Statistical Association のp値に関する文言について

はじめに どうもご無沙汰しております。先日までアメリカ(SFOからLA、ヨセミテ国立公園など)に旅行(研究ではなく)しておりましたので、更新できませんでした。今回は2016年3月7日にAmerican Statistical Association (ASA)が発表したp値に関する文書「Th…

R package'nnet'と'MASS'を用いて多項ロジスティック回帰分析を行う

今回はRのパッケージ'nnet'を用いて、多項ロジスティック回帰分析を実施する。 はじめに よく医学の論文で目にするのが「ロジスティック回帰分析」である。このように何も定義していない場合は、結果変数が二値(Yes or No)である二項ロジスティック回帰分…

R package 'ggmap'を用いたマッピング

今回は'ggmap'と呼ばれるパッケージを使用して、愛知県にあるナゴヤドームへの経路(最寄駅(大曽根駅)から)を図示することにする。 1. 早速、パッケージのインストールと読み出す install.packages("ggmap") library(ggmap) 2. 地名で緯度経度をグーグル…

R 役に立つ小技5選 vol.2

今回は先日(2016-02-02)の記事「R 役に立つ小技5選」で紹介したものと同様にRの役に立つちょっとしたコマンドvol.2を紹介する。 jojoshin.hatenablog.com No.1 二つのデータフレームを指定の列で結合し、共通の行のみ残す。 merge(x = データフレーム1, y …

飲酒と遺伝子の関係

今回は飲酒と遺伝子の話。 比較的わかりやすい内容で、数少ない一般の人にも読みやすい記事にしました。 はじめに お酒に「強い」「弱い」ってありますよね。顔が赤くなったり、気持ち悪くなったり、二日酔いになったり、それぞれ個人差があると思いますが、…

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

今回はSNP-set Kernel Association Test(SKAT)と呼ばれるrare-variantの解析手法についてRのパッケージ'SKAT'を用いて、解説する。 追記 20160908に新しいSKATの記事を公開しています。基本的にはこのページの内容を参照していただき、さらに詳しいところ…

質的形質の解析手法1-まずは表を書く-

今回は質的な形質をアウトカム(疾患の有無、基準値以上もしくは以下)とするデータの評価方法の第一歩について記述する。例によって、遺伝子多型を利用した解説ではあるが、一般的な質的変数の評価も非常に似ているので、参考にしてほしい。 (なお、今回の…

R 役に立つ小技5選

今回はデータハンドリングで役に立つ小技を5つだけ紹介する。(個人的に忘れやすいが、意外と役に立つものをpick upする) NO.1 「『不正なマルチバイト文字があります』のエラーを出ないようにする(おそらくmac OS Xのみ)」 このエラーについてはexcelの…

Rでglmを用いてオッズ比を算出するコマンド

今回はRを用いた場合のオッズ比の求め方を記述しておく。 (オッズ比がで求めることができることを知っていれば、簡単に理解できる。) はじめに 医学研究を行う上で、なんらかの指標で群分けしたグループでのある事象のおこりやすさ(オッズ)を比較するこ…