Biopython-population-genetics
Biopython-集団遺伝学
集団遺伝学は進化論において重要な役割を果たします。 種と同じ種内の2人以上の個体間の遺伝的差異を分析します。
Biopythonは人口遺伝学向けのBio.PopGenモジュールを提供し、主に `GenePop、Michel RaymondとFrancois Roussetが開発した人気のある遺伝学パッケージをサポートしています。
シンプルなパーサー
GenePop形式を解析して概念を理解するための簡単なアプリケーションを作成しましょう。
下記のリンクでBiopythonチームが提供するgenePopファイルをダウンロードします-https://raw.githubusercontent.com/biopython/biopython/master/Tests/PopGen/c3line.gen
以下のコードスニペットを使用してGenePopモジュールをロードします-
以下のようにGenePop.readメソッドを使用してファイルを解析します-
以下に示すように、遺伝子座と人口の情報を表示します-
ここで、ファイルには3つの遺伝子座と3つの母集団があります。最初の母集団には4つのレコード、2番目の母集団には3つのレコード、3番目の母集団には5つのレコードがあります。 record.populationsは、各遺伝子座の対立遺伝子データを持つすべての集団のセットを示します。
GenePopファイルを操作する
Biopythonには、軌跡および個体群データを削除するオプションがあります。
位置によって設定された母集団を削除する
位置による軌跡の削除、
名前で軌跡を削除する
GenePopソフトウェアとのインターフェース
Biopythonは、GenePopソフトウェアとやり取りするためのインターフェイスを提供し、それにより多くの機能を公開します。 Bio.PopGen.GenePopモジュールは、この目的に使用されます。 このような使いやすいインターフェイスの1つがEasyControllerです。 GenePopファイルの解析方法を確認し、EasyControllerを使用して分析を行います。
まず、GenePopソフトウェアをインストールし、インストールフォルダをシステムパスに配置します。 GenePopファイルに関する基本情報を取得するには、EasyControllerオブジェクトを作成し、次に指定されているget_basic_infoメソッドを呼び出します-
ここで、最初の項目は母集団リストであり、2番目の項目は遺伝子座リストです。
特定の遺伝子座のすべての対立遺伝子リストを取得するには、以下に指定されているように遺伝子座名を渡すことによりget_alleles_all_popsメソッドを呼び出します-
特定の母集団と遺伝子座ごとに対立遺伝子リストを取得するには、以下に示すように遺伝子座名と母集団の位置を渡してget_allelesを呼び出します-
同様に、EasyControllerは多くの機能を公開しています:対立遺伝子頻度、遺伝子型頻度、多遺伝子座F統計、Hardy-Weinberg平衡、連鎖不平衡など。