This vignette gives an introduction to RelMix 1.3, the graphical user interface of the relMix package described in Dørum et al. (2017). We will present the main features of the GUI with two examples.
Start RelMix by typing the following command in the R console
which will open the user interface seen in Figure 1.
In this example we consider a paternity case where we have a mixed DNA profile of a mother and child, in addition to reference profiles from the mother and the alleged father.
The first step in RelMix is to import data. The import files must be either comma, semicolon or tab-separated and must have dots as decimal separators. Examples will be given for the three types of files that are needed: mixture profile, reference profiles and allele frequencies. The mixture profile and reference profiles should contain the same loci in the same order, while the allele frequency file can contain additional loci not in the profiles. RelMix will give an error message if the data file has an error that is fatal for the program. RelMix will return a warning if there is a minor error in the data file that is not fatal for the program.
Table 1 shows the structure of the mixture file. The first line should contain column names as shown here: ‘SampleName’, ‘Marker’, ‘Allele1’ etc. The mixture profile in this example has a maximum of three unique alleles per markers, but the file may be expanded with columns ‘Allele4’, ‘Allele5’ and so on if there are additional observed alleles. In this example there are 22 markers, but only the first five are shown here. Only autosomal markers can be included. Marker names are case sensitive, and an error message will be given if markers are not found in the database.
If there are multiple replicates, the next replicate profile must have a different sample name (e.g. “relMix2”) and follow directly after the first replicate (i.e. no blank lines between).
Table 2 shows the format of the file containing the reference profiles (all reference profiles have to be in the same file). The first line should correspond to the column names seen here. The different reference profiles follow directly after each other, and each profile should have a specific sample name. In our example there are two reference profiles, “Mother” and “Father”. The file shoud only contain profiles of individuals defined in the pedigree. Note: as long as the built-in pedigrees are used, the reference profiles should be named either “Father”, “Mother” or “Child” because these are the only individual IDs that are defined in these pedigrees. If custom pedigrees are provided, any sample name can be used (see example 2 below). Only the first two markers and the last one are shown for each profile.
When clicking the database button in the main interface, the window in Figure 2 appears. Table 3 shows the format of the allele frequencies to be imported here. There is one row per allele and one column per marker. A blank space indicates that the allele is not observed for that marker. Only an excerpt of the database is shown here.
When clicking ‘Save’ here we return to the window in Figure 2, where we need to click ‘ok’ to exit the database settings. If a previously unobserved allele (i.e. not in the database) is found in the imported profiles, a notification will be given that the alllele has been added to the database with the minimum allele frequency. If the allele frequencies do not sum to 1, a question will appear of whether you would like to scale the frequencies. If not, a rest allele will be added.
In this example we will not consider mutations, so we can ignore the ‘Mutations’ button.
Note that if the dropout values are not set, an error window will occur. Even if you do not include dropout and drop-in, you must open the dropout window and click on the save button.
Click the RESTART button before starting on a new case.
In this example we have a two-person mixture with one known contributor, and it is hypothesised whether the second contributor is the child of the first contributor, or someone unrelated. We take silent alleles and mutations into account. Only one locus is considered.
Table 4 shows the mixture file. There is only one observed allele for this locus.
In this example there is only one known profile. Since we will provide a custom pedigree, the sample name of the profile can be anything as long as it corresponds to the ID in the pedigree.
The allele frequencies of the one diallelic marker are given in Table 6.
Note 1: A rest allele can only be addded if the sum of frequencies is less than 1. Therefore, enforced scaling will be performed if we click “No” and the sum is larger than 1.
Note 2: The added rest allele is given the name “r”. If a stepwise mutation model is chosen (see section below), numeric allele names are required, so in this case scaling must be chosen.
Clicking the mutation button in the main interface opens a new window. By default mutations are not accounted for (mutation rate set to 0). There are three mutation models to choose from. The ‘Equal’ mutation model assumes that all mutations are equally likely, the ‘Proportional’ model assumes mutation rates to be proportional to allele frequencies, and the ‘Stepwise’ mutation model assumes that mutations to closer allelles (fewer sequence repeats difference) are more probable. When ‘Stepwise’ is chosen, a range must also be specified that indicates the relative probability of mutating n+1 steps versus mutating n steps. This mutation model requires that the allele names are numerics indicating the number of sequence repeats. It does not account for microinvariants, and will treat mutations to and from microinvariants as practically impossible. This option corresponds to the model ‘Stepwise (unstationary)’ in Familias 3. Mutations to and from silent alleles are not possible for any of the models. See the Familias manual for more details on the mutation models (https://familias.no/).In this example we will use an equal mutation model with mutation rate 0.1 for both males and females.
Since the hypotheses in this example are not covered by the built-in pedigrees, we will provide RelMix with custom pedigrees defined in R scripts. The R scripts can for instance be exported from Familias 3, but can also be generated manually. The script below shows the code needed to provide the first pedigree where the two contributors are mother and child.
The second pedigree, where the two contributors are unrelated, is defined as below.
Note 1: Each pedigree must be defined in a variable called “ped1”.
Note 2: The names of the individuals in a pedigree (the id) must correspond to the names of individuals in the reference profiles.
Note 3: Each pedigree must be defined in a separate R script.Figure 11 shows how to import the custom pedigrees from R scripts, one script per pedigree.
In this example we believe there may be dropout in both contributors’ profiles. We set their dropout probabilities to 0.1 and the drop-in value to 0.05.
Dørum, G., Kaur, N., & Gysi, M. (2017). Pedigree-based relationship inference from complex DNA mixtures. International journal of legal medicine, 131(3), 629-641.