← |
«Секс на R» |
→ |
Секс на R–09: Опис проблеми III Чому статей саме дві? | Секс на R–13: Добір за двома ознаками у гермафродитів (з сексом та без нього) |
Секс на R–14 |
Секс на R-11: Моделювання добору за однією спадковою ознакою | Секс на R–15 |
13 Добір за двома ознаками у гермафродитів (з сексом та без нього)
13.1 Постановка задачі
Ускладнимо модель, яку ми зробили у попередньому розділі: розглянемо добір у популяції гермафродитів за двома генами (по два алелі у кожному). Виграш у таких умовах повинні мати ті особини, у яких є необхідне сполучення відповідних алелей у двох генах.
Нам будуть необхідні відповідні позначення. Тут можливо обрати безліч різних варіантів, але у будь-якому разі слід зупинитися на якомусь певному варіанті.
Визначимо, що ми розглядаємо два гени:
-
перший, ген A з домінантним алелем 1 (A) або 2 (a);
-
другий, B з домінантним алелем 3 (B) або 4 (b).
Цифри перед точкою (ви ж пам’ятаєте, що у R десятковий роздільник — це завжди точка, а не кома?) — це генотип за першим геном. Алелі першого гену — 1 та 2. Можливо 3 варіанти (12 та 21 для нас не відрізняються нічим).
Цифри після точки — генотип за другим геном, з алелями 3 та 4. Три варіанти за першим геном, три — за другим, усього — дев’ять.
У такому разі можливі дев’ять генотипів: 11.33, 11.34, 11.44, 12.33, 12.34, 12.44, 22.33, 22.34, 22.44
Які процеси цікаво спостерігати на такій моделі?
-
Вплив взаємодії генів на процеси в популяції;
-
Вплив наявності або відсутності сексу на процеси в популяції та на швидкість вироблення пристосувань.
Взаємодії маж генами немає, якщо за кожним геном різниця між алелями впливає на ймовірність успіху однаковим чином. Припустимо, на користь фенотипу 2 у порівнянні з фенотипом 1 діє добір інтенсивності s=0.1. Це означає, що особини з генотипом 11. (і 12. у разі повного домінування алелю 1) мають ймовірність загинути 10% у тих умовах, коли особини з генотипом 22. будуть зберігатися).
Припустимо, що за другим геном ситуація аналогічна. На користь фенотипу 4 у порівнянні з фенотипом 3 діє добір інтенсивності s=0.1. Це означає, що особини з генотипом .33 (і .34 у разі повного домінування алелю 3) мають ймовірність загинути 10% у тих умовах, коли особини з генотипом .44 будуть зберігатися).
Дещо спрощуючи, можна сказати, що у такому разі після того, як усі особини 22.44 виживатимуть, з-поміж особин 11.33, 12.33, 11.34 та 12.34 (носіїв обох несприятливих ознак, має лишитися близько 80% (точніше, 81% внаслідок двох хвиль вилучення по 10% особин), а з-поміж особин 22.33, 22.34, 11.44 та 12.44 (носії однієї несприятливої ознаки) залишиться по 90%.
Вплив на ймовірність виживання за кожним геном у цьому прикладі не залежить від стану іншого гену, тобто добір йде за двома генами ОКРЕМО.
Розглянемо іншу ситуацію. Вісім генотипів, що не мають потрібного сполучення ознак, проріджуються добором; особини 11.33, 11.34, 11.44, 12.33, 12.34, 12.44, 22.33 та 22.34 зазнають впливу 10% смертності, і лише особини 22.44 зберігаються усі.
У такому випадку добір йде за двома генами ВОДНОЧАС. В нашій моделі ми будемо розглядати саме такий випадок.
13.2 Генерація файлу з результатами схрещувань
У минулому розділі ми працювали з трьома генотипами та 6 можливими результатами схрещувань. Їх результати ми вказували прямо у тексті скрипту моделі. У цій моделі кількість генотипів збільшилася: їх вже дев’ять (а якщо розглянути ситуацію з трьома генами — їх стане двадцять сім!). Уявіть собі, як це може перевантажити скрипт!
Оптимальним здається таке рішення: за допомогою окремого скрипту створити окрему матрицю з переліком усіх комбінацій генотипів при схрещуваннях, де зазначити усіх потомків. Зберегти цю матрицю в окремий файл та завантажувати її у скрипт власне моделі.
Створимо такий скрипт.
Спочатку треба перебрати усі можливі комбінації дев’яти генотипів (таких комбінацій буде 81). В першому векторі дев’ять разів повторимо дев’ять генотипів, зберігаючи їх порядок; у другому векторі спочатку дев’ять разів повторимо перший, потім — дев’ять разів другий… Так ми переберемо усі можливі сполучення. Далі, щоб встановити, які генотипи будуть схрещуватися у кожній можливій парі, просто складемо коди цих генотипів.
# СТВОРЕННЯ МАТРИЦІ З КОМБІНАЦІЯМИ ГЕНОТИПІВ ТА ПОТОМСТВОМ ВІД ЇХ СХРЕЩУВАНЬ: МОДЕЛЬ ДОБОРУ ЗА ДВОМА ОЗНАКАМИ В ПОПУЛЯЦІЇ ДИПЛОЇДНИХ МОНОЦИКЛІЧНИХ ГЕРМАФРОДИТІВ З СЕКСОМ ТА БЕЗ НЬОГО
# setwd("~/!_Courses/Sex_on_R") # Робоча директорія (лише на комп'ютері Д.Ш.!!!)
rm(list = ls()) # Очищення раніше збережених об'єктів в Environment
# ПОЗНАЧЕННЯ: Два гени. Перший, ген A з домінантним алелем 1 (A) або 2 (a), і другий, B з домінантним алелем 3 (B) або 4 (b). Алелі гена A записуються до точки, гена B - після. Дев'ять генотипів: 11.33, 11.34, 11.44, 12.33, 12.34, 12.44, 22.33, 22.34, 22.44
# Утворення усіх можливих комбінацій генотипів:
First <- rep(c(11.33, 11.34, 11.44, 12.33, 12.34, 12.44, 22.33, 22.34, 22.44), 9)
Second <- sort(First)
All_Pairs <- First + Second
All_Pairs
## [1] 22.66 22.67 22.77 23.66 23.67 23.77 33.66 33.67 33.77 22.67 22.68 22.78
## [13] 23.67 23.68 23.78 33.67 33.68 33.78 22.77 22.78 22.88 23.77 23.78 23.88
## [25] 33.77 33.78 33.88 23.66 23.67 23.77 24.66 24.67 24.77 34.66 34.67 34.77
## [37] 23.67 23.68 23.78 24.67 24.68 24.78 34.67 34.68 34.78 23.77 23.78 23.88
## [49] 24.77 24.78 24.88 34.77 34.78 34.88 33.66 33.67 33.77 34.66 34.67 34.77
## [61] 44.66 44.67 44.77 33.67 33.68 33.78 34.67 34.68 34.78 44.67 44.68 44.78
## [73] 33.77 33.78 33.88 34.77 34.78 34.88 44.77 44.78 44.88
Цей перелік надлишковий; багато кодів повторюються. Залишимо в ньому лише унікальні значення, причому для простоти вишикуємо їх у порядку зростання.
# Лишаються тільки унікальні значення, розташовані у порядку зростання:
Pairs <- sort(unique(All_Pairs))
Pairs
## [1] 22.66 22.67 22.68 22.77 22.78 22.88 23.66 23.67 23.68 23.77 23.78 23.88
## [13] 24.66 24.67 24.68 24.77 24.78 24.88 33.66 33.67 33.68 33.77 33.77 33.78
## [25] 33.88 34.66 34.67 34.68 34.77 34.77 34.78 34.88 44.66 44.67 44.68 44.77
## [37] 44.78 44.88
Лишилося 38 кодів пар.
Зверніть увагу: деякі коди відповідають більш ніж одній парі батьківських генотипів (навіть без врахування їх порядку).
11.33 + 12.44 = 23.77;
11.44 + 12.33 = 23.77.
Чи є це недоліком нашого способу розрахунків? Ні. Річ у тім, що склад потомків буде однаковим в обох пар! Для схрещування важливо, які алелі комбінуються, але для розрахунку сполучень алелей за різними генами у загальному випадку неважливо, які з них отримані від одного з батьків, а які — від іншого.
Створимо матрицю, в який ми будемо розраховувати склад потомства залежно від сум кодів генотипів батьків.
# Створення файлу для перебору комбінацій
Comb_cols <- c("Pair", "A", "11", "12", "22", "B", "_.33", "_.34", "_.44", "11.33", "11.34", "11.44", "12.33", "12.34", "12.44", "22.33", "22.34", "22.44", "S")
Cmb <- matrix(NA, nrow = length(Pairs), ncol = length(Comb_cols))
colnames(Cmb) = Comb_cols
Cmb[ , "Pair"] <- Pairs
# Сполучення "генотипів" пар за генами A та B та переліки їх варіантів:
Cmb[ , "A"] <- trunc(Cmb[ , "Pair"])
Cmb[ , "B"] <- round(Cmb[ , "Pair"] - trunc(Cmb[ , "Pair"]), 2)
a <- unique(Cmb[ , "A"])
b <- unique(Cmb[ , "B"])
a # перелік варіантів сум кодів генотипів батьків за геном A
## [1] 22 23 24 33 34 44
b # перелік варіантів сум кодів генотипів батьків за геном B
## [1] 0.66 0.67 0.68 0.77 0.78 0.88
Автор цього коду чимало сил витратив на формування переліку b. Річ у тім, що в деяких випадках в розрахунках дрібної частини з’являються якісь залишки у 15-му знаку після десяткового роздільника. Одне значення 0.66 може відрізнятися від іншого 0.66 саме цим “хвостом” у 15-му десятковому знаку. Можна намагатися встановити, чому так виходить, і організовувати розрахунки так, щоб цієї різниці не виникало, а можна просто округлити до двох знаків. Тут обрано другий варіант.
Тепер можна встановити, якими будуть варіанти потомків за кожним з двох генів.
# Цикл, у якому визначаються потомки за кожною парою:
for (i in 1:length(Pairs)) { # Початок циклу
WayA <- which(a == Cmb[i, "A"])
switch(WayA, # Залежно від значення суми генотипів батьків за геном A обирається розподіл потомства за цим геном
{Cmb[i, "11"] <- 1; Cmb[i, "12"] <- 0; Cmb[i, "22"] <- 0},
{Cmb[i, "11"] <- 0.5; Cmb[i, "12"] <- 0.5; Cmb[i, "22"] <- 0},
{Cmb[i, "11"] <- 0.25; Cmb[i, "12"] <- 0.5; Cmb[i, "22"] <- 0.25},
{Cmb[i, "11"] <- 0; Cmb[i, "12"] <- 1; Cmb[i, "22"] <- 0},
{Cmb[i, "11"] <- 0; Cmb[i, "12"] <- 0.5; Cmb[i, "22"] <- 0.5},
{Cmb[i, "11"] <- 0; Cmb[i, "12"] <- 0; Cmb[i, "22"] <- 1})
WayB <- which(b == Cmb[i, "B"])
switch(WayB, # Залежно від значення суми генотипів батьків за геном B обирається розподіл потомства за цим геном
{Cmb[i, "_.33"] <- 1; Cmb[i, "_.34"] <- 0; Cmb[i, "_.44"] <- 0},
{Cmb[i, "_.33"] <- 0.5; Cmb[i, "_.34"] <- 0.5; Cmb[i, "_.44"] <- 0},
{Cmb[i, "_.33"] <- 0.25; Cmb[i, "_.34"] <- 0.5; Cmb[i, "_.44"] <- 0.25},
{Cmb[i, "_.33"] <- 0; Cmb[i, "_.34"] <- 1; Cmb[i, "_.44"] <- 0},
{Cmb[i, "_.33"] <- 0; Cmb[i, "_.34"] <- 0.5; Cmb[i, "_.44"] <- 0.5},
{Cmb[i, "_.33"] <- 0; Cmb[i, "_.34"] <- 0; Cmb[i, "_.44"] <- 1})
} # Кінець циклу
Cmb
## Pair A 11 12 22 B _.33 _.34 _.44 11.33 11.34 11.44 12.33 12.34
## [1,] 22.66 22 1.00 0.0 0.00 0.66 1.00 0.0 0.00 NA NA NA NA NA
## [2,] 22.67 22 1.00 0.0 0.00 0.67 0.50 0.5 0.00 NA NA NA NA NA
## [3,] 22.68 22 1.00 0.0 0.00 0.68 0.25 0.5 0.25 NA NA NA NA NA
## [4,] 22.77 22 1.00 0.0 0.00 0.77 0.00 1.0 0.00 NA NA NA NA NA
## [5,] 22.78 22 1.00 0.0 0.00 0.78 0.00 0.5 0.50 NA NA NA NA NA
## [6,] 22.88 22 1.00 0.0 0.00 0.88 0.00 0.0 1.00 NA NA NA NA NA
## [7,] 23.66 23 0.50 0.5 0.00 0.66 1.00 0.0 0.00 NA NA NA NA NA
## [8,] 23.67 23 0.50 0.5 0.00 0.67 0.50 0.5 0.00 NA NA NA NA NA
## [9,] 23.68 23 0.50 0.5 0.00 0.68 0.25 0.5 0.25 NA NA NA NA NA
## [10,] 23.77 23 0.50 0.5 0.00 0.77 0.00 1.0 0.00 NA NA NA NA NA
## [11,] 23.78 23 0.50 0.5 0.00 0.78 0.00 0.5 0.50 NA NA NA NA NA
## [12,] 23.88 23 0.50 0.5 0.00 0.88 0.00 0.0 1.00 NA NA NA NA NA
## [13,] 24.66 24 0.25 0.5 0.25 0.66 1.00 0.0 0.00 NA NA NA NA NA
## [14,] 24.67 24 0.25 0.5 0.25 0.67 0.50 0.5 0.00 NA NA NA NA NA
## [15,] 24.68 24 0.25 0.5 0.25 0.68 0.25 0.5 0.25 NA NA NA NA NA
## [16,] 24.77 24 0.25 0.5 0.25 0.77 0.00 1.0 0.00 NA NA NA NA NA
## [17,] 24.78 24 0.25 0.5 0.25 0.78 0.00 0.5 0.50 NA NA NA NA NA
## [18,] 24.88 24 0.25 0.5 0.25 0.88 0.00 0.0 1.00 NA NA NA NA NA
## [19,] 33.66 33 0.00 1.0 0.00 0.66 1.00 0.0 0.00 NA NA NA NA NA
## [20,] 33.67 33 0.00 1.0 0.00 0.67 0.50 0.5 0.00 NA NA NA NA NA
## [21,] 33.68 33 0.00 1.0 0.00 0.68 0.25 0.5 0.25 NA NA NA NA NA
## [22,] 33.77 33 0.00 1.0 0.00 0.77 0.00 1.0 0.00 NA NA NA NA NA
## [23,] 33.77 33 0.00 1.0 0.00 0.77 0.00 1.0 0.00 NA NA NA NA NA
## [24,] 33.78 33 0.00 1.0 0.00 0.78 0.00 0.5 0.50 NA NA NA NA NA
## [25,] 33.88 33 0.00 1.0 0.00 0.88 0.00 0.0 1.00 NA NA NA NA NA
## [26,] 34.66 34 0.00 0.5 0.50 0.66 1.00 0.0 0.00 NA NA NA NA NA
## [27,] 34.67 34 0.00 0.5 0.50 0.67 0.50 0.5 0.00 NA NA NA NA NA
## [28,] 34.68 34 0.00 0.5 0.50 0.68 0.25 0.5 0.25 NA NA NA NA NA
## [29,] 34.77 34 0.00 0.5 0.50 0.77 0.00 1.0 0.00 NA NA NA NA NA
## [30,] 34.77 34 0.00 0.5 0.50 0.77 0.00 1.0 0.00 NA NA NA NA NA
## [31,] 34.78 34 0.00 0.5 0.50 0.78 0.00 0.5 0.50 NA NA NA NA NA
## [32,] 34.88 34 0.00 0.5 0.50 0.88 0.00 0.0 1.00 NA NA NA NA NA
## [33,] 44.66 44 0.00 0.0 1.00 0.66 1.00 0.0 0.00 NA NA NA NA NA
## [34,] 44.67 44 0.00 0.0 1.00 0.67 0.50 0.5 0.00 NA NA NA NA NA
## [35,] 44.68 44 0.00 0.0 1.00 0.68 0.25 0.5 0.25 NA NA NA NA NA
## [36,] 44.77 44 0.00 0.0 1.00 0.77 0.00 1.0 0.00 NA NA NA NA NA
## [37,] 44.78 44 0.00 0.0 1.00 0.78 0.00 0.5 0.50 NA NA NA NA NA
## [38,] 44.88 44 0.00 0.0 1.00 0.88 0.00 0.0 1.00 NA NA NA NA NA
## 12.44 22.33 22.34 22.44 S
## [1,] NA NA NA NA NA
## [2,] NA NA NA NA NA
## [3,] NA NA NA NA NA
## [4,] NA NA NA NA NA
## [5,] NA NA NA NA NA
## [6,] NA NA NA NA NA
## [7,] NA NA NA NA NA
## [8,] NA NA NA NA NA
## [9,] NA NA NA NA NA
## [10,] NA NA NA NA NA
## [11,] NA NA NA NA NA
## [12,] NA NA NA NA NA
## [13,] NA NA NA NA NA
## [14,] NA NA NA NA NA
## [15,] NA NA NA NA NA
## [16,] NA NA NA NA NA
## [17,] NA NA NA NA NA
## [18,] NA NA NA NA NA
## [19,] NA NA NA NA NA
## [20,] NA NA NA NA NA
## [21,] NA NA NA NA NA
## [22,] NA NA NA NA NA
## [23,] NA NA NA NA NA
## [24,] NA NA NA NA NA
## [25,] NA NA NA NA NA
## [26,] NA NA NA NA NA
## [27,] NA NA NA NA NA
## [28,] NA NA NA NA NA
## [29,] NA NA NA NA NA
## [30,] NA NA NA NA NA
## [31,] NA NA NA NA NA
## [32,] NA NA NA NA NA
## [33,] NA NA NA NA NA
## [34,] NA NA NA NA NA
## [35,] NA NA NA NA NA
## [36,] NA NA NA NA NA
## [37,] NA NA NA NA NA
## [38,] NA NA NA NA NA
Тепер, коли відомо, які частки потомства отримують які алелі кожного гену, можна остаточно встановити генотипи потомства. Для перевірки, просумуємо усі частки кожного генотипу; якщо ніде нема помилки, усюди мають бути одиниці.
# Розрахунки часток потомства за кожним генотипом
Cmb[ , "11.33"] <- Cmb[ , "11"] * Cmb[ , "_.33"]
Cmb[ , "11.34"] <- Cmb[ , "11"] * Cmb[ , "_.34"]
Cmb[ , "11.44"] <- Cmb[ , "11"] * Cmb[ , "_.44"]
Cmb[ , "12.33"] <- Cmb[ , "12"] * Cmb[ , "_.33"]
Cmb[ , "12.34"] <- Cmb[ , "12"] * Cmb[ , "_.34"]
Cmb[ , "12.44"] <- Cmb[ , "12"] * Cmb[ , "_.44"]
Cmb[ , "22.33"] <- Cmb[ , "22"] * Cmb[ , "_.33"]
Cmb[ , "22.34"] <- Cmb[ , "22"] * Cmb[ , "_.34"]
Cmb[ , "22.44"] <- Cmb[ , "22"] * Cmb[ , "_.44"]
# Перевірка того, що сума часток різних генотипів потомства дорівнює одиниці
Cmb[ , "S"] <- Cmb[ , "11.33"] + Cmb[ , "11.34"] + Cmb[ , "11.44"] + Cmb[ , "12.33"] + Cmb[ , "12.34"] + Cmb[ , "12.44"] + Cmb[ , "22.33"] + Cmb[ , "22.34"] + Cmb[ , "22.44"]
Cmb
## Pair A 11 12 22 B _.33 _.34 _.44 11.33 11.34 11.44 12.33
## [1,] 22.66 22 1.00 0.0 0.00 0.66 1.00 0.0 0.00 1.0000 0.000 0.0000 0.000
## [2,] 22.67 22 1.00 0.0 0.00 0.67 0.50 0.5 0.00 0.5000 0.500 0.0000 0.000
## [3,] 22.68 22 1.00 0.0 0.00 0.68 0.25 0.5 0.25 0.2500 0.500 0.2500 0.000
## [4,] 22.77 22 1.00 0.0 0.00 0.77 0.00 1.0 0.00 0.0000 1.000 0.0000 0.000
## [5,] 22.78 22 1.00 0.0 0.00 0.78 0.00 0.5 0.50 0.0000 0.500 0.5000 0.000
## [6,] 22.88 22 1.00 0.0 0.00 0.88 0.00 0.0 1.00 0.0000 0.000 1.0000 0.000
## [7,] 23.66 23 0.50 0.5 0.00 0.66 1.00 0.0 0.00 0.5000 0.000 0.0000 0.500
## [8,] 23.67 23 0.50 0.5 0.00 0.67 0.50 0.5 0.00 0.2500 0.250 0.0000 0.250
## [9,] 23.68 23 0.50 0.5 0.00 0.68 0.25 0.5 0.25 0.1250 0.250 0.1250 0.125
## [10,] 23.77 23 0.50 0.5 0.00 0.77 0.00 1.0 0.00 0.0000 0.500 0.0000 0.000
## [11,] 23.78 23 0.50 0.5 0.00 0.78 0.00 0.5 0.50 0.0000 0.250 0.2500 0.000
## [12,] 23.88 23 0.50 0.5 0.00 0.88 0.00 0.0 1.00 0.0000 0.000 0.5000 0.000
## [13,] 24.66 24 0.25 0.5 0.25 0.66 1.00 0.0 0.00 0.2500 0.000 0.0000 0.500
## [14,] 24.67 24 0.25 0.5 0.25 0.67 0.50 0.5 0.00 0.1250 0.125 0.0000 0.250
## [15,] 24.68 24 0.25 0.5 0.25 0.68 0.25 0.5 0.25 0.0625 0.125 0.0625 0.125
## [16,] 24.77 24 0.25 0.5 0.25 0.77 0.00 1.0 0.00 0.0000 0.250 0.0000 0.000
## [17,] 24.78 24 0.25 0.5 0.25 0.78 0.00 0.5 0.50 0.0000 0.125 0.1250 0.000
## [18,] 24.88 24 0.25 0.5 0.25 0.88 0.00 0.0 1.00 0.0000 0.000 0.2500 0.000
## [19,] 33.66 33 0.00 1.0 0.00 0.66 1.00 0.0 0.00 0.0000 0.000 0.0000 1.000
## [20,] 33.67 33 0.00 1.0 0.00 0.67 0.50 0.5 0.00 0.0000 0.000 0.0000 0.500
## [21,] 33.68 33 0.00 1.0 0.00 0.68 0.25 0.5 0.25 0.0000 0.000 0.0000 0.250
## [22,] 33.77 33 0.00 1.0 0.00 0.77 0.00 1.0 0.00 0.0000 0.000 0.0000 0.000
## [23,] 33.77 33 0.00 1.0 0.00 0.77 0.00 1.0 0.00 0.0000 0.000 0.0000 0.000
## [24,] 33.78 33 0.00 1.0 0.00 0.78 0.00 0.5 0.50 0.0000 0.000 0.0000 0.000
## [25,] 33.88 33 0.00 1.0 0.00 0.88 0.00 0.0 1.00 0.0000 0.000 0.0000 0.000
## [26,] 34.66 34 0.00 0.5 0.50 0.66 1.00 0.0 0.00 0.0000 0.000 0.0000 0.500
## [27,] 34.67 34 0.00 0.5 0.50 0.67 0.50 0.5 0.00 0.0000 0.000 0.0000 0.250
## [28,] 34.68 34 0.00 0.5 0.50 0.68 0.25 0.5 0.25 0.0000 0.000 0.0000 0.125
## [29,] 34.77 34 0.00 0.5 0.50 0.77 0.00 1.0 0.00 0.0000 0.000 0.0000 0.000
## [30,] 34.77 34 0.00 0.5 0.50 0.77 0.00 1.0 0.00 0.0000 0.000 0.0000 0.000
## [31,] 34.78 34 0.00 0.5 0.50 0.78 0.00 0.5 0.50 0.0000 0.000 0.0000 0.000
## [32,] 34.88 34 0.00 0.5 0.50 0.88 0.00 0.0 1.00 0.0000 0.000 0.0000 0.000
## [33,] 44.66 44 0.00 0.0 1.00 0.66 1.00 0.0 0.00 0.0000 0.000 0.0000 0.000
## [34,] 44.67 44 0.00 0.0 1.00 0.67 0.50 0.5 0.00 0.0000 0.000 0.0000 0.000
## [35,] 44.68 44 0.00 0.0 1.00 0.68 0.25 0.5 0.25 0.0000 0.000 0.0000 0.000
## [36,] 44.77 44 0.00 0.0 1.00 0.77 0.00 1.0 0.00 0.0000 0.000 0.0000 0.000
## [37,] 44.78 44 0.00 0.0 1.00 0.78 0.00 0.5 0.50 0.0000 0.000 0.0000 0.000
## [38,] 44.88 44 0.00 0.0 1.00 0.88 0.00 0.0 1.00 0.0000 0.000 0.0000 0.000
## 12.34 12.44 22.33 22.34 22.44 S
## [1,] 0.00 0.000 0.0000 0.000 0.0000 1
## [2,] 0.00 0.000 0.0000 0.000 0.0000 1
## [3,] 0.00 0.000 0.0000 0.000 0.0000 1
## [4,] 0.00 0.000 0.0000 0.000 0.0000 1
## [5,] 0.00 0.000 0.0000 0.000 0.0000 1
## [6,] 0.00 0.000 0.0000 0.000 0.0000 1
## [7,] 0.00 0.000 0.0000 0.000 0.0000 1
## [8,] 0.25 0.000 0.0000 0.000 0.0000 1
## [9,] 0.25 0.125 0.0000 0.000 0.0000 1
## [10,] 0.50 0.000 0.0000 0.000 0.0000 1
## [11,] 0.25 0.250 0.0000 0.000 0.0000 1
## [12,] 0.00 0.500 0.0000 0.000 0.0000 1
## [13,] 0.00 0.000 0.2500 0.000 0.0000 1
## [14,] 0.25 0.000 0.1250 0.125 0.0000 1
## [15,] 0.25 0.125 0.0625 0.125 0.0625 1
## [16,] 0.50 0.000 0.0000 0.250 0.0000 1
## [17,] 0.25 0.250 0.0000 0.125 0.1250 1
## [18,] 0.00 0.500 0.0000 0.000 0.2500 1
## [19,] 0.00 0.000 0.0000 0.000 0.0000 1
## [20,] 0.50 0.000 0.0000 0.000 0.0000 1
## [21,] 0.50 0.250 0.0000 0.000 0.0000 1
## [22,] 1.00 0.000 0.0000 0.000 0.0000 1
## [23,] 1.00 0.000 0.0000 0.000 0.0000 1
## [24,] 0.50 0.500 0.0000 0.000 0.0000 1
## [25,] 0.00 1.000 0.0000 0.000 0.0000 1
## [26,] 0.00 0.000 0.5000 0.000 0.0000 1
## [27,] 0.25 0.000 0.2500 0.250 0.0000 1
## [28,] 0.25 0.125 0.1250 0.250 0.1250 1
## [29,] 0.50 0.000 0.0000 0.500 0.0000 1
## [30,] 0.50 0.000 0.0000 0.500 0.0000 1
## [31,] 0.25 0.250 0.0000 0.250 0.2500 1
## [32,] 0.00 0.500 0.0000 0.000 0.5000 1
## [33,] 0.00 0.000 1.0000 0.000 0.0000 1
## [34,] 0.00 0.000 0.5000 0.500 0.0000 1
## [35,] 0.00 0.000 0.2500 0.500 0.2500 1
## [36,] 0.00 0.000 0.0000 1.000 0.0000 1
## [37,] 0.00 0.000 0.0000 0.500 0.5000 1
## [38,] 0.00 0.000 0.0000 0.000 1.0000 1
save(Cmb, file = "GenotipeCombinations.RData")
Останнє, що можна зробити в цьому скрипті — зберегти отриману матрицю у вигляді окремого файлу (він буде збережений в робочій директорії).