Jag försöker simulera olika arvsmassor, jag har data (VCF-filer) av olika gener från 1000K-genprojektet.
Jag vill simulera olika hela genom, det vill säga generera en ny population genom att kombinera riktiga haplotyper jag har. Jag undrar vad som är det bästa sättet att ta itu med problemet. Det är vad som är en effektiv metod för att skapa realistiska (inte bara slumpmässigt utvalda delar och kombinera dem) nya genotyper baserat på de riktiga genotyper jag redan har.
Jag använder Bioconductor-paket VariantAnnotation för att läsa och manipulera VCF-filerna och TxDb.Hsapiens.UCSC.hg19.knownGene för att bestämma genernas positioner.
Data ser ut som följande:
> gene58 @ rowRangesGRanges objekt med 91 intervall och 1 metadatakolumn: seqnames ranges strand | paramRangeID <Rle> <IRanges> <Rle> | <factor> rs551585351 1 229566998 * | <NA> rs528384854 1 229567027 * | <NA> rs542093083 1 229567063 * | <NA> rs561849701 1 229567128 * | <NA> rs531042647 1 229567160 * | <NA> ... ... ... .... ... rs565479298 1 229569784 * | <NA> rs572772527 1 229569785 * | <NA> rs605430 1 229569803 * | <NA> rs605428 1 229569804 * | <NA> rs368699658 1 229569810 * | <NA> ------- seqinfo: 86 sekvenser från "hg19" genom
Genotypmatrisen för genen:
> gene.mat [ 1: 5, 1: 5] HG00867 HG02371 HG00759 HG00766 HG00844
rs551585351 "0 | 0" "0 | 0" "0 | 0" "0 | 0" "0 | 0" rs528384854 "0 | 0" "0 | 0" "0 | 0" "0 | 0" "0 | 0 "rs542093083" 0 | 0 "" 0 | 0 "" 0 | 0 "" 0 | 0 "" 0 | 0 "rs561849701" 0 | 0 "" 0 | 0 "" 0 | 0 "" 0 | 0 "" 0 | 0 "rs531042647" 0 | 0 "" 0 | 0 "" 0 | 0 "" 0 | 0 "" 0 | 0 "