新しいスプレッドシートファイルを開くことから始めます。Hardy-Weinbergの式に従い、pは集団内の優性対立遺伝子Aの周波数、qは劣性対立遺伝子Bの周波数として定義され、対立遺伝子AのセルB2への入力周波数p、およびセルB3への対立遺伝子Bの周波数q。
セルC2に値0.5を割り当てます。
1 – p = qの式に従って、セルC3に式「= 1 – C2」を入力して、対立遺伝子Bの頻度qを計算します。
セルE2とF2にそれぞれ「対立遺伝子1」と「対立遺伝子2」のラベルを付け、ランダム数式のRANDコードをセルE3に入力します。 =IF (RAND()
セルE3を選択し、セルの右下隅をE27までドラッグして、数式を25個のセルに複製し、他の子孫の対立遺伝子を作成します。 をクリックし、セル E3 で使用したのと同じ数式をセル F3 に入力します。
セルG2に「Genotype」という記述で始まるデータの3列目を追加し、セルG3にCONCATENATE関数を追加して、ランダムに生成された2つの対立遺伝子を組み合わせ、遺伝子型を作成します。
この数式を下にドラッグして25個のセルを表示し、セルH2、I2、J2にそれぞれAA、AB、およびBBのラベルを付けます。
次に、ここに示すように、セルH3、I3、およびJ3にIF関数を1つ入力します。数式を下にドラッグして、列ごとに 25 行ずつ移動します。数式は、この行の遺伝子型がヘッダー行の遺伝子型と一致する場合は 1 を返し、この行の遺伝子型が他の 2 つの遺伝子型のいずれかである場合は 0 を返します。H3: = IF (G3="AA",1,0) I3: =IF(OR(G3="AB,G3="BA"),1,0) J3: =IF(G3="BB",1,0)
次に、セルD28にラベルを付け、数式をセルH28に追加し、数式をセルI28とJ28にドラッグして、各遺伝子型の合計数を取得します。
次に、セルH30とJ30にそれぞれ「A」と「B」をラベル付けし、セルD31に「対立遺伝子の数」をラベル付けします。
セルH31とJ31にコードを追加して、シミュレートされた世代の対立遺伝子の総数を取得します。これは、それぞれのホモ接合型遺伝子型の頻度の2倍とヘテロ接合型遺伝子型の頻度です。
次に、セルE32に「次世代対立遺伝子頻度」というラベルを付け、セルH32とJ32にコードを追加して、次世代の対立遺伝子の比率を取得します。
先ほど構築した数学的モデルで生成された遺伝子頻度を使用して、細胞C2とC3の遺伝子プール値をH32とJ32の値に調整し、さらに10世代実行し、そのたびに結果の対立遺伝子頻度で遺伝子プールを更新します。
表の各時点での2つの変数の比率を記録し、小さな母集団が時間の経過とともにどのように変化するかを確認するための折れ線グラフを作成します。仮説: この研究の実験的仮説は、小さな集団は、遺伝的浮動の影響を受けやすいため、より大きな集団よりも対立遺伝子の Hardy-Weinberg 予想頻度から大きく逸脱するというものです。帰無仮説は、集団内の対立遺伝子頻度は Hardy-Weinberg 均衡方程式の期待頻度と異ならない、つまり対立遺伝子頻度が世代間で同じになるというものです。
遺伝子Aの頻度を0.3、遺伝子Bの頻度を0.7に設定し、モデルをさらに10回実行し、各実行後に次世代の遺伝子の比率をテーブルに記録します。
次に、セルの数式をさらに下にドラッグして、100個の受精卵を含むようにモデルを変更し、モデルをさらに10回実行します。
最後に実行した後、すべての作業データを個人用ストレージデバイスに保存し、スプレッドシートプログラムを終了します。