statistics
本ラボでは、フリーソフト「R」を統計の共通語としています。生物統計学の授業や、ローテーション、さまざまな研究場面において、Rを使う機会があると思いますので、各自のパソコンにダウンロードしておくといいでしょう。
Rのダウンロードの仕方 http://cran.md.tsukuba.ac.jp/
また、RはRstudioで使うのが便利だと思います。
「R」は生態学をはじめ、多くの研究分野においてひろく用いられています。「R」の優れた点とし て、「パッケージ」「ライブラリー」を追加していくことによって、高度な統計を行うことができることがあげられます。また、インターネット上に、優れた教材が多数存在し ます(全部タダ!)。「R」を扱うために は、多少のコマンドを覚えなくてはいけません。これらは面倒ですが、挑戦してみてください。操作面を考えると、GUI(マウスでカチカチとボタンを押すだけで操作できる形式)であるSPSSやJMPなどの統計ソフトのほうが初心者にとっては入りやすいと思います。しかし、これらのソフトは高額(数万)です。「R」にもRコ マンダー(Rcmdr)というGUI化するライブラリーが存在します。また、ExcelでRをできるライブラリーもあるようです(勉強中)
(以下、実習書からの抜粋) 統計ソフト「R」について
実際の生物は複雑極まりない研究対象ですが、研究において分析をする際には、単純な数値・データに置き換えることが必要になります。その際、数値データの羅列から、なにかしらのパターンを発見する統計statisticsが必要となります。ここでは、統計ソフト「R」を用いて、収集データのまとめ方を解説します。
仮説検証と統計の基礎の基礎
課題:興味をもったテーマを見つけて、仮説を立てて、データを集めて、分析してみよう。
Q 仮説・予測はなんだろうか?
Q 応答要因response term(研究者が興味をもっている変数、Yにあたる)はなんだろうか? 説明要因explanatory term(応答変数に影響を及ぼしているかもしれない変数、Xにあたる)はなんだろうか?
Q 応答要因、説明要因は連続変数(数値;0, 1, 2 …)? カテゴリカル変数(数値;オス/メス、いる/いない)?
Q P値 (p value)とは?
否定したい仮説(帰無仮説null hypothesis)が正しいと仮定したときに、手元にあるデータを得る確率
例:帰無仮説:「寄生されているヤドカリと寄生されていないヤドカリでは、体長に差がない」
→ 応答変数=体長(連続)、説明変数=寄生されているか、されていないか(カテゴリカル)
→ p=0.01であったらば、寄生は関係ない、という仮定のもとで、現在手元にあるデータを得る確率は1%
→ であったらば、偶然でデータが得られる確率は小さい
→ 帰無仮説を棄却!→結論:寄生されている個体が寄生されていない個体よりも大きい(または小さい)
エクセルを使いこなそう
データを取ったけど、どうやって管理すればいいの?
× シートを増やしていく ・・・データが増えてくると、いずれ破綻します。
○ 一つのシートを縦に長く使いましょう。
以下のようなデータをExcelで作ること
1行目:変数名を半角英数で書きます。変数名に空欄があってはいけません。たとえば、「body size」は×です。body_sizeのように、アンダーバーなどをうまく使いましょう。
大文字と小文字は別物です。たとえば、Maleとmaleは別のものとして処理されてしまいます。統一しましょう。
データがない場合(観察しなかった、よく分らなかった)には、「NA」と書きましょう(not availableの略)。
データを保存する際には、「名前を付けて保存」→「ファイルの種類」で「csv(カンマ区切り)」形式を選びましょう。
またファイル名は、半角英数字にしましょう(例:rinkai.csv)。 この形式だと、Rにもすぐに読み込めます。
例として、実際のデータ例を添付します。
Rの使い方
Rを開く
Windowsの場合、「ファイル>ディレクトリの変更」を選んで、「ブラウズ」によって、ファイルが置いてある箇所を指定する(例:デスクトップにファイルが置いてあったらば、デスクトップを指定する)
以下のように打ち込む。
data <- read.csv(“rinkai.csv”, T)
#dataという名前に、rinkai.csvを読み込む(Tはおまじないのようなものと考えて)
または、Rを開いたのち、data <- read.csv(" までうって、その後は読み込みたいファイルをドラッグ&ドロップすると、ディレクトリの変更をしなくともファイルを指定することができる。あとは、")を足せばいい。
attach(data)
#dataを使うぞ、という宣言
names(data)
#dataに含まれる変数名をチェック(飛ばしてもいい)
チェックポイント:データの1行目の変数名が出ますか? でていたらば、データの読み込みに成功しています。では分析に進みましょう!
変数の影響を調べよう
・ 一般線形モデルgeneral linear model(GLM)をやろう
・ 応答要因と説明要因のあいだの関係を調べることができる統計手法
・ 書き方
model <-glm(y~x, data=data)
# xには説明要因の変数名、yには応答要因の変数名を書く。
# 意味: model という「箱」に結果を入れる
summary(model)
#modelの中身をみる
結果の解釈
初学者は、EstimateとP値に注目しましょう。
Intercept(切片のこと、0と異なるかどうか)と説明要因に関して、
Estimate これが変数間の関係を示す(+だったらば正の関係、-だったらば負の関係)
(Std. Error Estimateの値の標準誤差)
(t や z EstimateとStd. Errorから算出される統計量)
P 統計量と自由度から算出されるP値 が表示されます。
目標(かなり適当)
学年
D1
エクセ ル・Rの使い方
統計の基礎
ノンパラメトリック
一般線形モデ ル
D2
一般化線形モデル、一般化線形混合モデル
D3-5
論文で使われている統計が一通り分るようになる
必要に応じて、ランダマイゼーション、ベイズ統計学、MCMCなどなど
博士論文のなかでは、
博士研究のテーマに関する総説(第一章)
および系統種間比較、メタ分析などによる分析(誰もやっていなかったらば)
を行うことを推奨します
注:
P値によって「違いがある・ない」「関係している・していない」と結論を導く考え方(帰無仮説検定)は統計の一つの考え方に過ぎず、かねてより、さまざまな批判があります(たとえば、P値が6%であったらば、どのように考えればいいのでしょうか?)。
帰無仮説検定の他にも、赤池情報量基準(AIC)に基づいたモデル選択や、その他のさまざまな統計の考え方が存在します。統計に慣れる入口として、P値に一喜一憂する帰無仮説検定の考え方を学ぶのはいいのですが、その他にもいろいろな考え方があるということを頭の隅に置いておいてください
一般/一般化線形混合モデル(GLMM)について
Rでは、一般線形混合モデル(正規分布)は、nlmeライブラリーのlme、一般化線形混合モデル(binomial, poisson分布)に関しては、lme4ライブラリーのlmerがおススメです。
lmerの使い方について
lmerは、P値を表示してくれないという鬼のような性質を持っています。簡単に説明します。
model1 <- lmer(y~x+(1|id), data=all_data, family=poisson)
という分析をしたとします。これは、yという従属変数に対して、xという独立要因が影響しているかどうか、を、all_dataというデータを使って、誤差構造をポアソン分布としてGLMMによって分析しています。
しかし、この結果は、t値を表示しますが、P値を表示してくれません。でも、論文には、P値を書きたいし、という場合には、どうしたらいいの! とパニックになりますが、少しトリッキーなことをしなくてはいけません。
そのためには、新しいmodel2というものを作ります。
model2 <- lmer(y~1+(1|id), data=all_data, family=poisson)
このモデルにはxが入っていないのに注意してください。「1」とは、切片だけ、という意味で、要するに独立要因を入れていないモデル、という意味です。ここから、
anova(model1, model2)
をします。これは呪文のようなものだと思ってください。
そうすると、model1(xが入っている結果)とmodel2(xが入っていない結果)を比較したときのモデルのあてはまりの良さが統計的に意味があるかどうか、というP値が出てきます。換言すると、もしもxがyに重要な影響を与えているのだとしたらば、xが入ったmodel1は、xが入っていないmodel2よりも、格段に優れているはずです。逆にxがyに影響していない変数であったらば、model1とmodel2を比べてみても、どんぐりの背比べ、ということで、P値は大きくなるでしょう。つまり、このP値はいいかえると、変数xの影響に関するP値に他なりません。