Yoshi Nishikawa's Blog

〜医学・疫学・統計学編〜

R

Rを使って負の二項分布で回帰する Negative binomial regression

裾の長いカウントデータを扱いたい(外れ値が有る)ときに、負の二項分布を仮定したモデリングを考える。 MASS packageにはいっていたので、覚書として残しておく。 R: Fit a Negative Binomial Generalized Linear Model 以下で実行できる。 library(MASS) …

仮想通貨の勢力図をRを使って可視化する

今日は少し脱線して、仮想通貨情勢をRで調べてみる。 この記事を見ながら、自分で実装してみた。 今回、使うのは3つのパッケージ。 元記事にあったとおり、coinmarketcaprで仮想通貨のデータをとってきて、treemapで可視化。 米ドルではなく日本円で計算して…

CRANから消えた"Archived R package"をインストールしたい

質的研究に目覚めた朝。 論文を読んで、package "concord"をインストール! しようにもCRANの表舞台から削除されている。 そんな時、アーカイブされているpackageをインストールするのが、以下の方法。 *こちらを参考にしました。 # Download package tarbal…

Rを使って時系列データの変化点をみつける: changepoint

時系列データを扱う時に、変化点を見つけたいことがある。 Rにchangepointというパッケージがあるので、実装してみる。 1つのchangepointはdefaultのmethod = AMOCで良い。 複数のchangepointであれば、methodでPELT, SegNeighやBinSegを指定すれば良い。 #…

計量経済分析ことはじめ~時系列データを正しく扱う~

Rによる計量経済分析を読んだ。このシリーズはとても勉強になる。 書籍のHPはこちら キーワードと、キーとなるパッケージ・関数を列挙しておく。 時系列データを扱う時の問題点がわかりやすく解説されていて、よかった。 クロスセクションデータの回帰分析 …

効率的なR運用を目指して

Rの基礎とプログラミング技法 Rの基礎とプログラミング技法に、Rを効率よく扱うコツについて非常にわかりやすく載っていたので、トライしてみた。 第5章:効率的なプログラミング apply applyは、 ベクトル単位で処理できる lapplyはリストやデータフレーム…

R markdownのknitr::opts_chunk設定をどうしているか。

忘備録的に。 私は、基本はこのスタイルで、 figureの縦横比が一致するようにしている。 tidyverseが静かに発動するようにしている。 knitr::opts_chunk$set(echo = TRUE, out.width = 480, out.height = 480, fig.width = 7,fig.height = 7) library(tidyve…

tableone パッケージでtable1をつくる

臨床研究のtable1は 臨床系の研究で、図表を見ると、まず高確率で遭遇するtable1 八割がたこういう患者背景だ。 (リンク先が「図」表記になっているッ・・・!) これをいとも簡単に作成できるR packageがある。その名も・・・ tableone table1 = 表1だ。 …

ggplot2で平均値の推移をプロットする

http://nfunao.web.fc2.com/files/sgplot_vs_ggplot2.pdf http://nfunao.web.fc2.com/files/R-ggplot2.pdf CRAN - Package doBy このあたりが参考になる。 ちなみに、 package “gplot"には、plotmeansという便利関数がある。

NAのある行を削除する

ある変数hogeの中に、NA(欠測値)があり、それを含む行だけを削除したい時。 data[complete.cases(data$hoge), ] でOK。

記述統計に立ち返る

記述統計にはいつもsummaryを使っていたが、 summary(data) を利用していたが、psych パッケージの describe(data) mean, sd, median, range, se, (歪度: skewness)https://en.wikipedia.org/wiki/Skewness, (尖度: Kurtosis)https://en.wikipedia.org/wiki/…

ベイズ統計を学ぶ

ネット上にも、いろいろと教材が有るので、備忘録として載せておく。 Stan超初心者入門 階層モデルの分散パラメータの事前分布について 階層ベイズとWAIC Stanコードの書き方 中級編 Prior distributions for variance parameters in hierarchical models. A…

StanとRでベイズ統計モデリング

StanとRでベイズ統計モデリング (Wonderful R) 読んでいる。これは名著である。前半部分は、ベイズ統計関わらず、役立つ内容。とくに6章、モデリングの視点から確率分布に迫る箇所は、なかなかまとまったものがないので一見の価値あり。 1章 統計モデリング…

csvファイルの読み込み

元データから読み込む際に、高頻度で出現する(していた)R上のエラー。対応策を備忘録として残しておく。 読み込みたいcsvを「UTF-8」形式にしておく。 私はmiというエディタを用いている。 “as.is=T"を入れる 文字列、数値が混在していてもOK。もし、数値…

ggplot2でグラフ作成 (3)

ggplot2 2016年に出版されたggplot2に関するHadley Wickhamによる著書。その名もggplot2、の続き。この本、最後まで読み解いて分かるが、本当におすすめ。データを扱うすべての人が読んだら良いと思う。 コンテンツ 大きく分けて3部で構成され、全12章にわか…

MCMC

はじめての統計データ分析 「はじめての統計データ分析」 に関して覚書。 1章の記事はこちら。 2章のハイライト 1) MCMC(Markov chain Monte Carlo method)により事後分布のデータを用い、 2) MCMCには、Metropolis-Hasting method, Gibbs sampling methods,…

survival aNalysis ~no no R more~

(またおっさんホイホイなタイトルをつけてしまった) ggplot2でsurvival analysisのプロットをしたいときは、 GGally パッケージに含まれる、ggsurv関数がある。 https://cran.r-project.org/web/packages/GGally/GGally.pdf 自分でggsurv関数を入れ込みた…

ggraphでグラフ作成

ggraph/README.md at master · thomasp85/ggraph · GitHub ggplot2 extensions: ggraph ggplotのextensionはこんなところにも。

Rで21世紀の相関係数を算出する(MIC)

相関 2変数とも連続データで,正規分布に従っているならばPearsonの相関係数を用いることができる。 少なくとも1変数が非連続データの時にはノンパラメトリック検定のSpearmanやKendallの相関係数を用いる。これらは、実データでなく、順位付け(大小関係)…

データ解析チートシート cheat sheet

チートシート R Studioのウェブサイトにまとまっており、 www.rstudio.com 以下のように様々なチートシートがある。 Data Wrangling with dplyr and tidyr Cheat Sheet Data Visualization with ggplot2 Cheat Sheet これは便利だ。

Network Meta-Analysisについて

Network Meta-Analysis (NMA) 従来のメタアナリシスの課題 従来のメタアナリシスでは、2つの治療についての比較しか得られない。例えばうつ病に対する薬剤には多くの種類があり、有効性・安全性・薬価は様々である。 そこで、利用可能なすべての薬剤につい…

qplotで日本語を使う

ggplotを手軽に ggplotのコードが覚えられない、忘れる。 何故かエラーになる、そんなことはありませんか? ggplotを手軽に行うための関数があります。 その名も、qplot(quickplot) qplot qplot. ggplot2 2.1.0 ここを参考に色々な事ができる。 plot関数に近…

GLMMを実装する

The glmmADMB package このパッケージを用いて、以下でinstallする。 install.packages("R2admb") install.packages("glmmADMB", repos=c("http://glmmadmb.r-forge.r-project.org/repos", getOption("repos")), type="source") これでzero inflationなどの…

circular statistics (角度統計)について

髄膜炎に関する論文 Seasonal dynamics of bacterial meningitis: a time-series analysis. The Lancet Global Health http://dx.doi.org/10.1016/S2214-109X(16)30064-X 以前読んだ論文。前回はWaveletについて述べた。今日は、角度統計(circular statistic…

疫学・統計・Rなどの役立つリンク集 (Useful Links for Epidemiology, Statistics, R etc)

統計学 Statistics 統計学の学習(Learning statistics) Basics of Statistics (Jarkko Isotalo) 統計解析結果のレポーティング(Reporting statistical results) JJCO誌のガイドラインは1997年と古い物だが、有用。 日本語:福田治彦、大橋靖雄「Japanese Jou…

羽鳥さんのR4DS

r4ds.had.co.nz データサイエンスとか、ビッグデータとか言った文言が流行っていますが、この際の作業の殆ど前処理です。 データサイエンティストの80%はマエショリストで出来ていると言っても過言ではありません。 世界でマエショリストを夢見るみんなへの…

WaveletCompを使って気象データの周期性を解析する

WaveletComp 以前読んだ論文を参考に、WaveletCompを使ってみた。 気象データ www.data.jma.go.jp ここからA村のデータをとってくる。 A村のデータ 5年間の気温、降水量、風速のデータを取得。以下で実装。 library(WaveletComp) w.temp <- analyze.wavelet(…

髄膜炎のGlobal Trendに関する時系列データ解析論文

髄膜炎に関する論文 Seasonal dynamics of bacterial meningitis: a time-series analysis. The Lancet Global Health http://dx.doi.org/10.1016/S2214-109X(16)30064-X 読んだ。 米プリンストン大学の研究者らからの報告。 髄膜炎の発症には、季節性があっ…

GIS再入門

岩波データサイエンス vol.4 読んでみた。 今回のテーマは、地理空間情報処理。再入門するには、基礎のところが良かった。あとは、個人情報保護の問題点まで、触れられていてよかった。雰囲気をつかむには良いと思われる。顧客データ等々の専門外のところは…

ggplot 2軸でプロットする

ggplot 美麗グラフが気に入っているのだが、そのままでは、左右で異なる軸を提示したいときにうまくいかない。 Rで解析:ggplot2の利便性が向上「plotflow」パッケージを参考にしたら、"plotflow"というパッケージを用いて二軸表示出来るようになった。 デー…