Skip to content

F-statistics #
Find similar titles

In Population genetics, F-statistics (also known as Fixation index, \( \mathrm{F_{ST}} \), \( \mathrm{F_{IS}} \), \( \mathrm{F_{IT}} \)) describe the statistically expected level of heterozygosity in a population; more specifically the expected degree of (usually) a reduction in heterozygosity when compared to Hardy-Weinberg equilibrium expectation. (https://en.wikipedia.org/wiki/F-statistics)

\( \mathrm{F_{ST}} \) 값은 Effective population size를 추정하는데 사용된다.

종류 #

다음과 같은 Fixation index가 있다.

  • \( \mathrm{F_{ST}} \): sub-population / total
  • \( \mathrm{F_{IS}} \): individual / population
  • \( \mathrm{F_{IT}} \): individual / total
  • Pairwise \( \mathrm{F_{ST}} \): 집단간 변이 정도를 의미함. 어느 두 그룹이 유전적 교류가 없다면 크다.

PLINK 로 계산하기 #

PLINK의 --Fst 명령으로 좌위별 Fst 값을 계산할 수 있다. (이배체만 가능)

R 패키지로 계산하기 #

유전자형 데이터를 다음 파일로 정리한다.

$ cat potato.txt
Sample    Pop    Ploid    Format    marker1    marker2    marker3
individual1    population1    2    BiA    AA    AB    BB  
individual2    population1    2    BiA    AA    AB    BB

StAMPP로 읽는다.

$ R
> install.packages('StAMPP')
> install.packages("hierfstat")
> library(StAMPP)
> library(hierfstat)
> library(pegas)
> df <- read.table('potato.txt', sep='\t', header=TRUE)
> df.freq <- stamppConvert(df, type='r')

StAMPP에 genlight 형식으로 바꿔주는 기능이 있다.

> df.genlight <- stampp2genlight(df.freq, TRUE)

adegenet에 Fst를 계산하는 기능이 있으나, genind 형식이어야 한다. genlight를 genid 형식으로 변경한다.

> df.mat <- as.matrix(df.genlight)
> df.mat[df.mat == 0] <- "1/1"
> df.mat[df.mat == 1] <- "1/2"
> df.mat[df.mat == 2] <- "2/2"
> df.genind <- df2genind(df.mat, sep="/", ploidy=2, pop=df$Pop)

Fst를 계산한다.

> Fst(as.loci(df.genind))
        Fit        Fst         Fis
marker1  0.2447420 0.10146648 0.159454807
marker2 0.1646295 0.06746762 0.104191391

Pairwise Fst도 계산한다.

> pairwise.fst(df.genind)

4배체 데이터가 섞여 있는 경우에는 StAMPP를 이용한다.

> df.fst <- stamppFst(df.freq, 100, 95, 1)

관련정보 #

Incoming Links #

Related Codes #

Suggested Pages #

web biohackers.net
0.0.1_20140628_0