- 遺伝率とその推定のためのACEモデル・アプリケーション"Mx"
- Mixed Linear Model
- いずれにしろ、次のようなことが基本になる
- 表現型の分散共分散行列が、のように分解できて、この分散共分散行列に従う多次元正規分布の点(多次元ベクトル〜個体数の長さのベクトル)が観測データであると考える
- そして、そのときの遺伝率がであることから
- 観測データ(フェノタイプのデータベクトル)に、想定されるGを持ち込んで、の推定値を求めることが、遺伝率の推定
- ここで、双生児解析ならGには、「一卵性双生児の相関係数は1、二卵性は0.5」を決め打ちに使うし、同胞やその他の血縁関係の場合にも、血縁関係に基づく値を用いてGを作ることもあれば、計測ジェノタイプデータがあるならそれから、遺伝要因の重なり具合を推定してGの値とすることもある。血縁関係にない人を集めてきた場合にゲノムワイドSNPデータなどから、個人間のにかより具合を計算してGを作れば、ゲノムワイドSNPデータに基づく遺伝率推定となる
- どうしてもわからないといけないのは
- それを使って
- 一卵性双生児同士の表現型は、遺伝率が1ならいつも一致すること
- 遺伝率が0のときは、血縁関係の程度によらず、表現型はばらばらなこと
- 遺伝率が0から1の間のときには、血縁関係が強いほど表現型が似ていること
- をシミュレーションしておこう
library(mvtnorm)
n <- 6
G <- diag(rep(1,n))
G
G[1,2] <- G[2,1] <- 1
G[3,4] <- G[4,3] <- 0.5
G[5,6] <- G[6,5] <- 0.02
G
n.iter <- 10^4
E <- diag(rep(1,n))
par(mfrow=c(2,2))
ks <- c(1,0.8,0.5,0)
Vs <- Xs <- list()
for(i in 1:length(ks)){
Vs[[i]] <- ks[i]*G + (1-ks[i])*E
Xs[[i]] <- rmvnorm(n.sample,sigma=Vs[[i]])
plot(Xs[[i]][,5],Xs[[i]][,6],xlim=range(Xs[[i]]),ylim=range(Xs[[i]]),cex=0.1,pch=20,xlab="one",ylab="the other",main=paste("k=",ks[i]))
points(Xs[[i]][,3],Xs[[i]][,4],cex=0.1,pch=20,col=3)
points(Xs[[i]][,1],Xs[[i]][,2],cex=0.1,pch=20,col=2)
}
par(mfcol=c(1,1))