CalcMatch is a C/C++ software developed by Yun Li. It compares two sets of pedigree files. It was initially written to compare imputed genotypes with their true/experimental counterpart but can be used to compare the concordance between any two sets of pedigree files. The input data are in standard Merlin/QTDT format (http://csg.sph.umich.edu//abecasis/Merlin/tour/input_files.html).
specify one input pedigree set.
specify the other input pedigree set.
generates a matrix taking values 0,1,2 indicating # of matched alleles. The dimension of the matrix is # of overlapping individuals times # of overlapping markers of the two input pedigree sets.
is turned on by default (which means: if you put --bySNP in command line, it will be turned OFF!) to generate SNP specific measures. The output .bySNP will contain the following 6 fields for each SNP:
(1) SNP : SNP name (2) gErr : genotypic discordance rate (3) aErr : allelic discordance rate (4) matchedG : number of genotypes matched (5) matchedA: number of alleles matched (6) maskedG: total number of genotypes evaluated/masked (<=n of course) (I should change the naming to comparedG or evaluatedG)
NOTE: this option is turned on by default. If you put --byGeno in command line, it will be turned OFF! can be added on top of --bySNP. It will generates the following fields after the 6 fields above:
(7) hetAerr : allelic discordance rate among heterozygotes (8) AL1: allele 1 (an arbitrary allele) (9) AL2: allele 2 (10) freq1: frequency of AL1 (11) MAF (12) #true 1/1: # individuals with experimental genotype AL1/AL1 (13) mm1/2: # of true AL1/AL1 being imputed as AL1/AL2 (14) mm2/2: # of true AL1/AL1 being imputed as AL2/AL2 (15) #true 1/2 (16) mm1/1 (17) mm2/2 (18) #true 2/2 (19) mm1/1 (20) mm1/2
Similar to --byGeno, it is used on top of --bySNP. It may be used together with --byGeno. It will generate the following fields, after (7-20) is --byGeno is turned on or after the 6th field otherwise.
(A) almajor: major allele (B) alminor: minor allele (C) freq1: major allele frequency (D) accuracy11: allelic concordance rate for homozygotes major allele (E) accuracy12: allelic concordance rate for heterozygotes (F) accuracy22: allelic concordance rate for homozygotes minor allele
generates a separate output file .byPerson and contains the following information for each person:
(1) famid (2) subjID (3) gErr (4) aErr (5) matchedG (6) matchedA (7) maskedG
This --byPerson option is useful if there is potential sample swap or inter-individual difference, e.g., sequencing depth, number of markers genotyped.
--maskflag --maskped --maskdat
CalcMatch compares all genotypes overlapping the two input sets. However, when --maskflag is turned on AND --maskped and --maskdat are specified (I know ...) it compares only the following subset of the overlapping genotypes: genotypes either not found (i.e., individual or marker not included) or missing (included but with value 0/0, N/N, ./. etc) in --maskped / --maskdat. These options are useful when some individuals were masked for some SNPs while others masked for a different set of SNPs.
See option --bySNP
See option --byPerson
Reports the list of SNPs that appear in minus strand (that is, SNPs for which more than two alleles are seen when combining imputed and true pedigree files. This file will only be generated if --byGeno or --accuracyByGeno is turned on. The former option --byGeno is turned on by default.
example command lines
CalcMatch --trueped true.ped --truedat true.dat --impped imp.ped --impdat imp.dat -o CalcMatch.Output --byPerson
Will generate CalcMatch.Output.bySNP (6 fields only) and CalcMatch.Output.byPerson.
CalcMatch --trueped true.ped --truedat true.dat --impped imp.ped --impdat imp.dat -o CalcMatch.Output --byGeno --byPerson
Will generate CalcMatch.Output.bySNP (6+20 fields) and CalcMatch.Output.byPerson.
CalcMatch --trueped true.ped --truedat true.dat --impped imp.ped --impdat imp.dat -o CalcMatch.Output --accuracyByGeno --byPerson
Will generate CalcMatch.Output.bySNP (6+6 fields only) and CalcMatch.Output.byPerson.
CalcMatch --trueped true.ped --truedat true.dat --impped imp.ped --impdat imp.dat -o CalcMatch.Output --accuracyByGeno --byGeno --byPerson
Will generate CalcMatch.Output.bySNP (6+20+6 fields only) and CalcMatch.Output.byPerson.
Please go to http://www.sph.umich.edu/csg/yli/software.html