FUT2 marker coordinates and provenance¶
All genomic coordinates used by genoSecretor are stored in
src/genosecretor/data/assemblies.yaml.
This document summarizes sources; the YAML file is authoritative.
Primary markers¶
| rsID | Role | GRCh37 (chr:pos) | GRCh38 (chr:pos) | Source |
|---|---|---|---|---|
| rs601338 | Complete LoF se428 (W143X) | 19:49206674 | 19:48703417 | dbSNP rs601338 |
| rs1047781 | Weak se385 (I129F) | 19:49206631 | 19:48703374 | dbSNP rs1047781 |
| rs602662 | LD proxy for se428 | 19:49206985 | 19:48703728 | dbSNP rs602662 |
Figure. FUT2 on chr19 (GRCh38): se385 (rs1047781) and se428 (rs601338) in the coding exon, 43 bp apart, and the se428 LD proxy (rs602662). All three sit in a ~354 bp cluster.
CHM13v2 positions are derived from the NCBI T2T-CHM13v2 FUT2 gene span (NC_060943.1 51690377–51700359) relative to GRCh38 FUT2 (NC_000019.10 48695971–48705951), offset +2994406.
| rsID | CHM13v2 (chr:pos) |
|---|---|
| rs1047781 | 19:51697780 |
| rs601338 | 19:51697823 |
| rs602662 | 19:51698134 |
Allele frequencies (1000 Genomes)¶
VCF ALT frequency of the derived allele at the two functional SNPs (two-marker method) in NYGC 30x GRCh38: AFR (n=661), AMR (n=347), EAS (n=504), EUR (n=503).
- rs1047781 T = se385 (WEAK /
Se^w) - rs601338 A = se428 (LOF /
se)
Research use only
These are 1000 Genomes genotype frequencies, not salivary secretor phenotypes.
Figure. Derived-allele frequency (VCF ALT) of se385 (rs1047781 T) and se428 (rs601338 A) in AFR, AMR, EAS, and EUR. Fill scale 0–1, same cream–gold–red as the LD heatmap.
| Marker | Allele | AFR | AMR | EAS | EUR |
|---|---|---|---|---|---|
| rs1047781 | T (se385) | 0.000 | 0.001 | 0.439 | 0.000 |
| rs601338 | A (se428) | 0.491 | 0.341 | 0.004 | 0.441 |
se385 is common only in East Asians. se428 is common in AFR, EUR, and AMR and rare in EAS. Counts and run reports: 1000 Genomes FUT2 slices. Pairwise table: examples/data/1kg_ld/secretor_markers_ld.tsv.
Linkage disequilibrium (1000 Genomes)¶
Pairwise haplotype r² among the three tag SNPs in 1000 Genomes AFR (n=661), AMR (n=347), EAS (n=504), and EUR (n=503), NYGC 30x GRCh38. The statistic is haplotype-frequency r² from phased GT (same as PLINK 2 --r2-phased; GWASTutorial LD).
Research use only
These values describe LD in 1000 Genomes genotypes, not salivary secretor phenotypes.
Figure. Haplotype r² heatmaps for AFR, AMR, EAS, and EUR. Axis labels: 7781 = rs1047781, 1338 = rs601338, 2662 = rs602662. NA = monomorphic SNP (r² undefined).
| Pair | Role | AFR | AMR | EAS | EUR |
|---|---|---|---|---|---|
| rs601338–rs602662 | se428 vs proxy | 0.994 | 0.956 | 1.000 | 0.893 |
| rs1047781–rs601338 | se385 vs se428 | NA | 0.001 | 0.003 | NA |
| rs1047781–rs602662 | se385 vs proxy | NA | 0.001 | 0.003 | NA |
rs602662 tags the se428 nonsense allele tightly in AFR (|D′| = 1.000) and AMR (|D′| = 1.000) and well in EUR (|D′| = 0.996). In EAS both se428 and the proxy are rare (ALT AF = 0.004) and perfectly coincident in this panel (r² = 1.000), so the proxy is not a substitute for se385, which is the common East Asian reduced-activity allele. se385 is absent from these AFR and EUR extracts (and nearly absent in AMR), so r² with the other tags is undefined (NA) or near zero.
| r² | rs1047781 | rs601338 | rs602662 |
|---|---|---|---|
| rs1047781 | 1.000 | NA | NA |
| rs601338 | NA | 1.000 | 0.994 |
| rs602662 | NA | 0.994 | 1.000 |
| r² | rs1047781 | rs601338 | rs602662 |
|---|---|---|---|
| rs1047781 | 1.000 | 0.001 | 0.001 |
| rs601338 | 0.001 | 1.000 | 0.956 |
| rs602662 | 0.001 | 0.956 | 1.000 |
| r² | rs1047781 | rs601338 | rs602662 |
|---|---|---|---|
| rs1047781 | 1.000 | 0.003 | 0.003 |
| rs601338 | 0.003 | 1.000 | 1.000 |
| rs602662 | 0.003 | 1.000 | 1.000 |
| r² | rs1047781 | rs601338 | rs602662 |
|---|---|---|---|
| rs1047781 | 1.000 | NA | NA |
| rs601338 | NA | 1.000 | 0.893 |
| rs602662 | NA | 0.893 | 1.000 |
VCF ALT allele frequencies (WEAK = T at rs1047781, LOF = A at rs601338, SE_PROXY = A at rs602662):
| Marker | ALT | AFR | AMR | EAS | EUR |
|---|---|---|---|---|---|
| rs1047781 | T (WEAK) | 0.000 | 0.001 | 0.439 | 0.000 |
| rs601338 | A (LOF) | 0.491 | 0.341 | 0.004 | 0.441 |
| rs602662 | A (SE_PROXY) | 0.492 | 0.352 | 0.004 | 0.467 |
Regenerate from local NYGC 30x panels (~/.gwaslab/{ANC}.ALL.split_norm_af.1kg_30x.hg38.vcf.gz, or GENOSECRETOR_1KG_<ANC>_VCF). AFR/EAS/EUR fall back to the committed three-SNP extracts; AMR needs a local 30x panel:
Pairwise table: examples/data/1kg_ld/secretor_markers_ld.tsv.
Allele polarity¶
Biological states are independent of VCF REF/ALT orientation. allele_states in markers.yaml map bases:
| Marker | FUNCTIONAL / non-proxy | Derived |
|---|---|---|
| rs601338 | G = FUNCTIONAL (Se) | A = LOF (se) |
| rs1047781 | A = FUNCTIONAL (Se) | T = WEAK (Se^w) |
| rs602662 | G = NON_SE_PROXY | A = SE_PROXY (tags se428 in EUR/AFR) |
Swapped REF/ALT (for example A/G at rs601338) is remapped before inference.
Do not assume VCF REF = functional allele — files may be flipped. genoSecretor maps bases to FUNCTIONAL / LOF / WEAK / SE_PROXY before haplotype rules run.
Figure. GRCh37/38 encode se428 as G→A (W143X). genoSecretor maps records to FUNCTIONAL or LOF; haplotype rules never use raw REF/ALT.
Contig aliases¶
Numeric 19, chr19, and RefSeq accessions (NC_000019.9, NC_000019.10, NC_060943.1) are equivalent within a build.