Skip to content

Reproducibility-FBB-MSU/codon_bias

Repository files navigation

Codon-bias

This project is aimed to reproduce some plots from Palidwor GA, Perkins TJ, Xia X (2010) A General Model of Codon Bias Due to GC Mutational Bias. PLoS ONE 5(10): e13431.

В статье построена математическая модель, объясняющая разную зависимость кодонного биаса (использование одного из синонимичных кодонов) от общего GC состава генома. На основе этой модели были получены предполагаемые функции зависимости кодонного состава от GC3. Графики этих зависимостей были наложены на скаттерплот реальных зависимостей во множестве геномов. Кроме того, были построены теплокарты, отображающие корреляции GС3 и абсолютные/относительные (посчитанные внутри группы синонимичных кодонов) частоты кодонов.

Мы воспроизводим рисунки 1, 4, 5, 6, 7. При этом скаттерплоты с рисунка 1 были построены только по данным бактериальных и хлоропластных геномов, в статье были также использованы данные по генам человека. В статье полученные реальные аппроксимированные зависимости приводятся только в виде рисунков, поэтому мы не могли сравнить полученные нами рисунки и рисунки из статьи численно, но визуально рисунки похожи.

Часть 1: подготовка данных. В файле dataset.ipynb создаются таблицы df_proc_relfreq.csv и df_plant_relfreq.csv, содержащие относительные частоты синонимичных кодонов и df_proc.csv + df_plant.csv, содержащие абсолютные частоты синонимичных кодонов и использующиеся потом для построения всех графиков. В файле rel_freq.ipynb находится одноименная функция, по "сырым" данным из базы данных CCUG (те же данные, что использовались в статье) считающая частоты синонимичных кодонов.

Часть 2: построение теплокарт. В файле heatmaker.ipynb строятся теплокарты корреляции между G/C составом и GC3 для каждого динуклеотида для бактерий и растений (соответствуют теплокартам с рисунка 1 в статье).

Часть 3: построение скаттерплотов. В файле model_definer.ipynb содержится единственная функция y_model(codon), по кодону определяющая, какая теоретически у него должна быть зависимость относительной частоты (внутри группы синонимичных) от GC3 (соответственно мат. модели из статьи). Функция возвращает вектор из значений функции предполагаемой зависимости. В файле loess_1d.py находится одноименная функция, аппроксимирующая точки на скаттерплоте (возвращает вектор из значений). Это стандартная аппроксимация, файл с кодом был взят из источника.

В файлах one_codon_graph.ipynb, plant_proc_graph.ipynb, two-three_codons_grafics_without_sum.ipynb, two_three_sum_graph.ipynb строятся сами скаттерплоты. На каждом рисунке накладываются друг на друга три слоя: (1) сам скаттерплот из точек (каждая точка соответствует одному геному с определёнными значениями относительной частоты используемости конкретного кодона среди синонимичных и GC3); (2) loess-аппроксимация (жирная линия того же цвета, что и точки); (3) зависимость относительной доли от GC3, согласно мат.модели, построенной в статье (красная линия).

В файле one_codon_graph.ipynb скаттерплот на каждом рисунке строится дляодного кодона, данные для астительных геномов.

В файле plant_proc_graph.ipynb на каждом рисунке накладываются два скаттерплота для одного и того же кодона, но в разных геномах - хлоропластных и прокариотических.

В файле two-three_codons_grafics_without_sum.ipynb на рисунках накладываются друг а друга скаттерплоты для двух или трёх разных кодонах, имеющих одинаковую предполагаемую зависимость.

В файле two_three_sum_graph.ipynb для тех же пар и троек кодонов значения codon usage складыватся. Линия предполагаемой зависимости при этом нормируется на число кодонов (т.е. значения по Оу умножаются на число кодонов).

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published