第7回 2019/6/19¶
Chapter 5 Neutral Evolution¶
- 5.1 Neutral Evolution as the Default Process of Genomic Changes
- 5.2 How to Describe Random Nature of DNA Propagation
- 5.3 Expected Evolutionary Pattens Under Neutrality
- 5.4 DNA Polymorphism
- 5.5 Mutation is the Major Player of Evolution
- 5.6 Evolutionary Rate Under the Neutral Evolution
- 5.7 Various Features of Neutral Evolution
- 5.8 Historical Developments of Population Structure Analysis Under Neutral Evolution
Chapter 6 Natural Selection¶
- 6.1 Basic Concept of Natural Selection
- 6.2 Various Types of Positive Selection
- 6.3 Natural Selection on Populations with Large Number of Individuals
- 6.4 Natural Selection on Populations with Small Number of Individuals
- 6.5 Natural Selection at the Genomic Level
講義では上記の章を取り扱ったが、ここでは "Figure 5.4 Computer simulation of random genetic drift"(以下) を実際にRを使ってプロットする。
なお、以下のスクリプトは2Sで受けた生命科学の講義の教科書:「演習で学ぶ生命科学 第2版」(東京大学生命科学教科書編集委員会/編、ISBN 978-4-7581-2075-3)の付録データを元に作成されている。
この本には、「ニューラルネットワークのシミュレーション(文字のパターン認識)」や「トランスクリプトーム解析」、「転写フィードバックのモデル化」など、かなり面白い内容が詰まっており、駒場時代に受けた講義の中でも特に好きな講義であった。(1単位分しかなかったのは残念でした…)
遺伝的浮動のシミュレーション¶
個体数 $1,010$ の集団内に、適応的でも有害でもない遺伝子変異 $X$ が$50$% の頻度で存在したとする。今、地殻変動によってこれら集団から $10$ 個体が離島に隔離されてしまい、$2$ つの集団に分かれた。この $2$ 集団は互いに交雑する個体が現れることなく、しかも集団サイズを保ったまま、独立にそれぞれ $50$ 世代、世代交代が行われた。
こうした現象が独立に $10$ 回起こった場合の、世代数と遺伝子頻度の関係について R
を用いてシミュレーションせよ。ただし、個体が生殖可能年齢まで生き残り、生殖に成功するかどうかは全て偶然によって決定されているとする。
関数定義¶
#「演習で学ぶ生命科学 第2版」(東京大学生命科学教科書編集委員会/編、ISBN 978-4-7581-2075-3)付録データ
# 本データの著作権,出典等は本書の該当する文書,図,表に準じます
#==========
# p158 遺伝的浮動のシミュレーション のRスクリプト
#==========
drift <- function(Population, init_Freq, total_Gen, Rep, place){
Freq <- numeric(total_Gen +1)
Num <- numeric(total_Gen)
Gen <- numeric(total_Gen +1)
Freq[1] <- init_Freq
par(mfrow = place)
for(j in 1:Rep){ # 集団別に Rep 回繰り返し
for(i in 1:total_Gen){ # 総世代回数だけ繰り返し
Gen[i] <- i
Num[i] <- rbinom(1, Population , Freq[i]) # 二項分布から乱数取得
Freq[i+1] <- Num[i] / Population
}
Gen [i+1] <- i+1
title <- paste("Population: ", Population, sep="") # 追加
plot(Gen,Freq,ylim=c(0,1),xlim=c(1,total_Gen),type="l",lty=1, main=title)
par(new=T)
}
}
Population = 1000 # 集団サイズ
initial_frequency = 0.5 # 初期頻度
total_generation = 50 # 総世代数
Replication = 10 # 試行回数
place = c(2,1) # 描画する場所を定義
# 集団サイズが 1000 の場合
drift(Population=1000, initial_frequency, total_generation, Replication, place=place)
# 集団サイズが 10 の場合
drift(Population=10, initial_frequency, total_generation, Replication, place=place)
したがって、次世代を残す確率($\approx$適応度)が同じであっても、集団サイズによって大きく運命が変わることがわかる。特に、個体数の少ない少集団ではこの影響が顕著に表面化する。固定が起こっている。
このことから、離島集団内で広まった遺伝子変異 $X$ は、離島集団の個体数が少ないがゆえに起こった遺伝的浮動の結果である可能性も十分にあり、この変異が離島において適応的だったとは断言できない。