今日は、多変量の可視化1のつづきです。主成分分析(PCA)はordination(あるいは次元削減)の基本ですが、その発展形の一つとして主座標分析(PCoA)を学んでいきます。次元削減の方法は、他にもNMDS, t-SNE等々、日々発展形が開発されていますが、基盤となるアイデアはいっしょです。この講義の終了後もご自分で手法のアップデートを行ってもらうとよいと思います。
まずは前回と同じデータを使います。再度のダウンロードは不要ですが、以下のものを使います。
エコプレートのサンプルデータを用いた多変量解析のための準備をする。まずは、データの取得情報をまとめたファイルをダウンロードする:metadata_osaka.csv
さらにエコプレートの測定結果に前処理(説明は省略)を済ませたものをダウンロードする:osaka_summary_integ_ave.csv
これらのデータファイルが保存されているのと同じフォルダ内に、新しいRスクリプトを作成し、ライブラリーとデータを読み込むところから始めます。
library(vegan)
metadata_osaka <- read.csv("metadata_osaka.csv", header=T)
osaka_summary_integ_ave <- read.csv("osaka_summary_integ_ave.csv", header=T)
metadata_osaka$place_sample <- as.factor(metadata_osaka$place_sample)
osaka_summary_integ_ave[osaka_summary_integ_ave < 0] <- 0 #ゼロ未満の値をすべてゼロに置き換える
これで準備はOKです。
今日の講義時間中にどこまでできるか分かりませんが、内容は二つです。別の教材ページの内容を使います。
生態学的距離と主座標分析:こちら
Permutationという検定方法:こちら、とくにこの部分("エコプレートパターンに処理間で違いはあるか (db-RDA)?")
この解説内容の理解が進んだら、以前から使っている、31次元の微生物機能データ(エコプレートデータ)osaka_summary_integ_ave を用いて主座標分析をして、実際に可視化してみましょう。以下ヒントです。
使うデータはデータフレームosaka_summary_integ_aveすべてのデータ
用いる距離(distance)(=非類似度:dissimilarity)は、ユークリッド距離とBray-Curtis距離両方。グラフもそれぞれ作成する
主座標分析の色分けには一列目の情報を使うcol=2*as.numeric(metadata_osaka$place_sample)
できたらmanabaからRスクリプトを提出してください。
前回の主成分分析の課題の回答は以下のようになります。一次元の主成分分析しかしていない人がいますが、課題の指示では二次元のものをつくるというものでした。
library(vegan)
meta_and_env <- read.csv("test_random_osaka.csv",header=T)
test_water.d<-vegdist(meta_and_env[,3:7], method="euclidian")
PCoA_test_water <- cmdscale(test_water.d, k = 2)
x<-PCoA_test_water[,1]
y<-PCoA_test_water[,2]
plot(x,y, cex=2,col=2*as.numeric(as.factor(meta_and_env$place)),pch=2*as.numeric(as.factor(meta_and_env$place)))