ばらばらな遺伝因子とばらばらな環境因子

  • あるフェノタイプが遺伝因子と環境因子の和で決まるとする
  • 掲載図の上段は100人について、遺伝因子と環境因子の和の大きさを示したものである
    • 赤は遺伝因子、青は環境因子
  • 下段左端は遺伝因子についてのヒストグラム
  • 下段中央は環境因子についてのヒストグラム
  • 下段右端は遺伝因子と環境因子の和(フェノタイプ)のヒストグラム
  • いずれも特にきれいな分布ということはない
  • 個々人の因子の内訳も、ばらばら(遺伝因子が強い人もいれば、環境因子が強い人もいる、半々くらいの人もいる)
  • このとき、遺伝因子(赤のヒストグラム)の分散と、環境因子(青のヒストグラム)の分散の和は、フェノタイプの分散になる
  • この関係が成り立つのは、遺伝因子の強さと環境因子の強さに関連がないとき
  • 遺伝因子と環境因子の強さに関係があるときには、両因子の間の共分散がフェノタイプの分散に影響してくる
  • これが、『フェノタイプの分散=遺伝因子の分散+環境因子の分散(+遺伝因子と環境因子の共分散)』の根拠であり、遺伝率とは、フェノタイプの分散に占める遺伝因子の分散のこと
  • その他。Rメモ
    • par(mfcol=c(2,4))とすると、図の表示で、画面を2行4列に分けられる
    • 下のソースでは"layout(matrix(c(1,1,1,2,3,4),2,3,byrow=TRUE))

"と、layout()を使っている

    • これは、
> matrix(c(1,1,1,2,3,4),2,3,byrow=TRUE)
     [,1] [,2] [,3]
[1,]    1    1    1
[2,]    2    3    4
    • のような、2x3行列を作り、行列のセルの値で、描図領域を定めたもの(1行目はすべて値が1なので、画面の描図領域の上半分は第1の図で占められる。2行目は、3列にそれぞれ、2,3,4と値が振られているので、第2,3,4の図が、画面の下段を3列に区切ったそれぞれの領域に描かれる
# フェノタイプの分散 Variance of phenotype

# 遺伝要因と環境要因の和で決まる
# Phenotype is determined by the sum of genetic and environmental factors

# フェノタイプの分散は遺伝要因の分散と環境要因の分散の和
# Variance of phenotype is the sum of variance of genetic factor and variance of environmental factor

N<-100

X<-sample(c(rpois(N/2,10),rpois(N/2,60)))
X<-X-min(X)
X<-X/max(X)
Y<-sample(c(rpois(N/4,50),rpois(0*N/4,100),rpois(3*N/4,1360)))
Y<-Y-min(Y)
Y<-Y/max(Y)
#Z<-sin((1:N)/N*(2*pi))*((1:N)-N/2)^3
#Z<-Z-min(Z)
#Z<-Z/max(Z)
ord<-order(X+Y)

jpeg("test.jpeg")
layout(matrix(c(1,1,1,2,3,4),2,3,byrow=TRUE))

barplot(rbind(X[ord],Y[ord]),col=c("red","blue"))


hist(X,col="red")
hist(Y,col="blue")
#hist(Z)
hist(X+Y)

var(X)
var(Y)
var(X+Y)
var(X)+var(Y)
#var(X+Y+Z)
#var(X)+var(Y)+var(Z)

par(def.par)

dev.off()
  • Nを小さめにしないと上段の図の表示がうまくいかないので、Nを小さめにして絵を描いた
  • Nを大きめにしないと、分散の和の一致が見えにくいので、Nを大きくした実行結果を付ける
> N<-1000000
> X<-sample(c(rpois(N/2,10),rpois(N/2,60)))
> X<-X-min(X)
> X<-X/max(X)
> Y<-sample(c(rpois(N/4,50),rpois(0*N/4,100),rpois(3*N/4,1360)))
> Y<-Y-min(Y)
> Y<-Y/max(Y)
> var(X)
[1] 0.06732149
> var(Y)
[1] 0.1373604
> var(X+Y)
[1] 0.2047414
> var(X)+var(Y)
[1] 0.2046819
>