Alel Frekansları için Markov Modelleri
Derste, R çıktısı şöyle olan Markov matrisi \(M\)'nin baştaki özdeğerinin:
[,1] [,2] [,3] [,4]
[1,] 0.980 0.005 0.005 0.010
[2,] 0.005 0.980 0.010 0.005
[3,] 0.005 0.010 0.980 0.005
[4,] 0.010 0.005 0.005 0.980
bütün alellerin eşit temsil edildiği (her biri 0.25 olasılıkla) bir durumu modelleyen bir özvektör ürettiğini gördün.
Bu egzersizde, başlangıç alel dağılımı:
[1] 1 0 0 0
olan bir durumda mutasyon sürecini bir for-döngüsüyle yineliyoruz ve gerçekten de olanın bu olduğunu — yani özvektörün for-döngüsünün yerine doğru bilgiyi verdiğini — gösteriyoruz.
Markov Süreçleri hakkında daha fazlası için şu bağlantıya bak.
Bu egzersiz
R ile Veri Bilimi için Lineer Cebir
kursunun bir parçasıdırEgzersiz talimatları
- 1000 mutasyon sonrası alel dağılımı olan
x'i yazdır. M'nin (senin için yüklendi) ilk özvektorünü bul ve toplamı1olacak şekilde ölçeklendir.v1değişkenine ata.v1'i, yaniM'nin ölçeklendirilmiş ilk özvektorünü yazdır vexile karşılaştır.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# This code iterates mutation 1000 times
x <- c(1, 0, 0, 0)
for (j in 1:1000) {x <- M%*%x}
# Print x
print(___)
# Print and scale the first eigenvector of M
Lambda <- eigen(M)
v1 <- Lambda$vectors[, ___]/sum(Lambda$___[, 1])
# Print v1
print(___)