seekia/resources/geneticReferences/traits/facialStructure.go

153 lines
2.7 KiB
Go
Raw Normal View History

package traits
import "seekia/internal/helpers"
import "maps"
func getFacialStructureTraitObject()Trait{
// Map Structure: rsID -> References Map
locusReferencesMap := make(map[int64]map[string]string)
referencesMap_List1 := make(map[string]string)
referencesMap_List1["SNPedia.com - Appearance"] = "https://www.snpedia.com/index.php/Appearance"
referencesMap_List1["A Genome-Wide Association Study Identifies Five Loci Influencing Facial Morphology in Europeans"] = "https://journals.plos.org/plosgenetics/article?id=10.1371/journal.pgen.1002932"
lociList_1 := []int64{
//TODO: Add more SNPs.
// These SNPs are from https://www.snpedia.com/index.php/Appearance
4648477,
4648478,
7516150,
7552331,
1572037,
1999527,
4648379,
1005999,
2422239,
2422241,
6749293,
16863422,
12694574,
2894450,
974448,
1978859,
2034127,
2034128,
2034129,
7628370,
7617069,
717463,
894883,
7640340,
875143,
6795519,
2168809,
9858909,
4552364,
4353811,
13098099,
13097965,
17447439,
6555969,
2342494,
10237319,
10265937,
10266101,
10237838,
10237488,
10278187,
10234405,
6950754,
6462544,
7803030,
12155314,
9692219,
1562006,
1562005,
7779616,
7799331,
7781059,
7807181,
6462562,
10485860,
2108166,
1158810,
6478394,
805722,
11191909,
1747677,
805693,
805694,
9971100,
2274107,
12358982,
11604811,
11237982,
1939697,
1939707,
10843104,
17252053,
4433629,
7966317,
1887276,
7965082,
12437560,
16977002,
16977008,
16977009,
4793389,
8079498,
7214306,
1019212,
1008591,
2327101,
6056066,
1015092,
975633,
6039266,
2327089,
4633993,
4053148,
6039272,
6056119,
6056126,
911020,
6020940,
6020957,
911015,
2832438,
397723,
}
for _, rsID := range lociList_1{
locusReferencesMap[rsID] = maps.Clone(referencesMap_List1)
}
facialStructureLociList := helpers.GetListOfMapKeys(locusReferencesMap)
referencesMap := make(map[string]string)
referencesMap["SNPedia.com - Appearance"] = "https://www.snpedia.com/index.php/Appearance"
referencesMap["A Genome-Wide Association Study Identifies Five Loci Influencing Facial Morphology in Europeans"] = "https://journals.plos.org/plosgenetics/article?id=10.1371/journal.pgen.1002932"
facialStructureObject := Trait{
TraitName: "Facial Structure",
TraitDescription: "The structure of a person's face.",
DiscreteOrNumeric: "Discrete",
LocusReferencesMap: locusReferencesMap,
LociList: facialStructureLociList,
LociList_Rules: []int64{},
RulesList: []TraitRule{},
OutcomesList: []string{},
NumericValueFormatter: nil,
ReferencesMap: referencesMap,
}
return facialStructureObject
}