はじめに
仕事で統計遺伝学が必要になりそうなので、実践でわかる!Rによる統計遺伝学を始めた。
備忘録的に記していく。
問題1.3
FAMuSSデータのactin3_16971064 SNPのマイナーアレルを調べ、その頻度を求めよ。次に変数Raceで層別化した場合のそのアレル頻度を求め、結果を解釈せよ。
という問題。
FAMuSS研究は運動トレーニング前後での骨格筋の筋量と筋力の遺伝的決定要因を見つけるために、被験者の225個のSNPと筋・骨・皮下脂肪などの形質を調べたそうです。
使用するデータ
使用するデータは本で指定されたURLから。
FAMussデータ
http://pub.maruzen.co.jp/book_magazine/support/r_toukeiidengaku/FMS_data.txt
必要なパッケージ
geneticsパッケージをインストールしておく。
install.packages("genetics")
そして読み込む。
library(genetics)
データの読み込み
FAMuSSデータを読み込む。
**read.delim()**関数は、データ区切りがタブの場合。
df <- read.delim("http://pub.maruzen.co.jp/book_magazine/support/r_toukeiidengaku/FMS_data.txt")
遺伝子頻度とアレル頻度を求める
geneticsパッケージの**genotype()**関数を使って、actin3_16971064 SNPの遺伝子型頻度とアレル頻度を求める。
# genotypeオブジェクトを作り、遺伝子頻度とアレル頻度を求める
Geno <- genotype(df$actn3_1671064, sep = "")
summary(Geno)
変数の区切りの指定は、元データがスペース区切りのため、sep = ""
とする。
実行結果。
> #genotypeオブジェクトを作り、遺伝子頻度とアレル頻度を求める
> Geno <- genotype(df$actn3_1671064, sep = "")
> summary(Geno)
Number of samples typed: 1221 (87.4%)
Allele Frequency: (2 alleles)
Count Proportion
A 1382 0.57
G 1060 0.43
NA 352 NA
Genotype Frequency:
Count Proportion
A/A 394 0.32
A/G 594 0.49
G/G 233 0.19
NA 176 NA
Heterozygosity (Hu) = 0.4915079
Poly. Inf. Content = 0.3706155
actin3_16971064 SNPのマイナーアレルはGでその頻度は43%、メジャーアレルはAでその頻度は57%という結果。
遺伝子型AA、GGはホモ接合型、AGはヘテロ接合型。
メジャーアレル2個の遺伝子型AAは野生型ホモ接合となる。
民族で層別化した場合のアレル頻度
まず、変数Raceの要素を調べてみる。
table(df$Race)
実行結果
> table(df$Race)
African Am Am Indian Asian Caucasian Hispanic Other
44 1 97 791 52 49
この内、Asian、Caucasian、Hispanicをピックアップして、アレル頻度を見てみる。
# Asianでのアレル頻度
GenoAsian <- genotype(df$actn3_1671064[df$Race=="Asian"], sep = "")
summary(GenoSAsian)
# Caucasianでのアレル頻度
GenoCaucasian <- genotype(df$actn3_1671064[df$Race=="Caucasian"], sep = "")
summary(GenoCaucasian)
# Hispanicでのアレル頻度
GenoHispanic <- genotype(df$actn3_1671064[df$Race=="Hispanic"], sep = "")
summary(GenoHispanic)
実行結果
> #Asianでのアレル頻度
> GenoAsian <- genotype(df$actn3_1671064[df$Race=="Asian"], sep = "")
> summary(GenoAsian)
Number of samples typed: 94 (20.4%)
Allele Frequency: (2 alleles)
Count Proportion
A 103 0.55
G 85 0.45
NA 732 NA
Genotype Frequency:
Count Proportion
A/A 29 0.31
A/G 45 0.48
G/G 20 0.21
NA 366 NA
Heterozygosity (Hu) = 0.4980658
Poly. Inf. Content = 0.3726977
>
> #Caucasianでのアレル頻度
> GenoCaucasian <- genotype(df$actn3_1671064[df$Race=="Caucasian"], sep = "")
> summary(GenoCaucasian)
Number of samples typed: 768 (66.6%)
Allele Frequency: (2 alleles)
Count Proportion
A 874 0.57
G 662 0.43
NA 772 NA
Genotype Frequency:
Count Proportion
A/A 245 0.32
A/G 384 0.50
G/G 139 0.18
NA 386 NA
Heterozygosity (Hu) = 0.4907947
Poly. Inf. Content = 0.3701922
>
> #Hispanicでのアレル頻度
> GenoHispanic <- genotype(df$actn3_1671064[df$Race=="Hispanic"], sep = "")
> summary(GenoHispanic)
Number of samples typed: 49 (11.8%)
Allele Frequency: (2 alleles)
Count Proportion
G 53 0.54
A 45 0.46
NA 732 NA
Genotype Frequency:
Count Proportion
G/G 15 0.31
G/A 23 0.47
A/A 11 0.22
NA 366 NA
Heterozygosity (Hu) = 0.5017883
Poly. Inf. Content = 0.3733285
Asian、Caucasian、Hispanicの比較では顕著な差はなさそう...かな
最終的なスクリプト
# Rによる遺伝統計学
# 問題1.3
# Rをきれいにする
rm(list = ls())
# geneticsパッケージを使う
library(genetics)
# データを読み込む
df <- read.delim("http://pub.maruzen.co.jp/book_magazine/support/r_toukeiidengaku/FMS_data.txt")
# genotypeオブジェクトを作り、遺伝子頻度とアレル頻度を求める
Geno <- genotype(df$actn3_1671064, sep = "")
summary(Geno)
# 次に、変数Raceで層別化した場合のアレル頻度を求める
# 変数Raceの要素の数を調べる
table(df$Race)
# Asianでのアレル頻度
GenoAsian <- genotype(df$actn3_1671064[df$Race=="Asian"], sep = "")
summary(GenoAsian)
# Caucasianでのアレル頻度
GenoCaucasian <- genotype(df$actn3_1671064[df$Race=="Caucasian"], sep = "")
summary(GenoCaucasian)
# Hispanicでのアレル頻度
GenoHispanic <- genotype(df$actn3_1671064[df$Race=="Hispanic"], sep = "")
summary(GenoHispanic)
参考文献
- 実践でわかる!Rによる統計遺伝学(著/アンドレア・S. フォルクス、監訳/西山 毅)、丸善出版、2016