Type: Package
Title: Analysing SNP Data to Identify Sex-Linked Markers
Version: 1.0.5
Date: 2024-06-22
Author: Diana Robledo-Ruiz [aut, cre], Floriaan Devloo-Delva [aut], Bernd Gruber [aut], Arthur Georges [aut], Jose L. Mijangos [aut], Carlo Pacioni [aut], Peter J. Unmack [ctb], Oliver Berry [ctb]
Description: Identifies, filters and exports sex linked markers using 'SNP' (single nucleotide polymorphism) data. To install the other packages, we recommend to install the 'dartRverse' package, that supports the installation of all packages in the 'dartRverse'. If you want understand the applied rational to identify sexlinked markers and/or want to cite 'dartR.sexlinked', you find the information by typing citation('dartR.sexlinked') in the console.
License: GPL (≥ 3)
URL: https://green-striped-gecko.github.io/dartR/
BugReports: https://groups.google.com/g/dartr?pli=1
Depends: adegenet (≥ 2.0.0), dartR.base, dartR.data, R (≥ 3.5)
Imports: doParallel (≥ 1.0.17), ggplot2, methods, utils, foreach, patchwork
Encoding: UTF-8
NeedsCompilation: no
Packaged: 2024-06-22 06:09:12 UTC; bernd
RoxygenNote: 7.3.1
Maintainer: Diana Robledo-Ruiz <diana.robledoruiz1@monash.edu>
Repository: CRAN
Date/Publication: 2024-06-24 15:40:02 UTC

Removes loci that are sex linked

Description

This function identifies sex-linked and autosomal loci present in a SNP dataset (genlight object) using individuals with known sex. It identifies five types of loci: w-linked or y-linked, sex-biased, z-linked or x-linked, gametologous and autosomal.

This function produces as output a genlight object with autosomal loci only.

Usage

gl.drop.sexlinked(
  x,
  system = NULL,
  ncores = 1,
  plot.display = TRUE,
  plot.theme = theme_dartR(),
  plot.colors = NULL,
  plot.file = NULL,
  plot.dir = NULL,
  verbose = NULL
)

Arguments

x

Name of the genlight object containing the SNP data. This genlight object needs to contain the sex of the individuals. See explanation in details [required].

system

String that declares the sex-determination system of the species: 'zw' or 'xy' [required].

ncores

Number of processes to be used in parallel operation. If ncores > 1 parallel operation is activated, see "Details" section [default 1].

plot.display

Creates four output plots. See explanation in details [default TRUE].

plot.theme

Theme for the plot. See Details for options [default theme_dartR()].[not yet implemented]

plot.colors

[not implemented yet]

plot.file

Name for the RDS binary file to save (base name only, exclude extension) [default NULL].

plot.dir

Directory to save the plot RDS files [default as specified by the global working directory or tempdir()].

verbose

Verbosity: 0, silent or fatal errors; 1, begin and end; 2, progress log; 3, progress and results summary; 5, full report [default NULL, unless specified using gl.set.verbosity].

Details

The genlight object must contain in gl@other$ind.metrics a column named "id", and a column named "sex" in which individuals with known-sex are assigned 'M' for male, or 'F' for female. The function ignores individuals that are assigned anything else or nothing at all (unknown-sex).

The creation of plots can be turned-off (plot.display = FALSE) in order to save a little bit of running time for very large datasets (>50,000 SNPs). However, we strongly encourage you to always inspect the output plots at least once to make sure everything is working properly.

Function's output

This function returns as output a genlight object that contains only autosomal loci (i.e. sex-linked loci have been dropped.)

And four plots:

Value

A genlight object and 4 plots.

Author(s)

Custodian: Diana Robledo-Ruiz – Post to https://groups.google.com/d/forum/dartr

References

Examples

LBP_noSexLinked <- gl.drop.sexlinked(x = LBP, system = "xy", plot.display = TRUE, ncores = 1)
LBP_noSexLinked


Uses sex-linked loci to infer sex of individuals

Description

This function uses the output of function gl.keep.sexlinked (list of 5 elements) to infer the sex of all individuals in the dataset. It uses 3 types of sex-linked loci (W-/Y-linked, Z-/X-linked, and gametologs), assigns a preliminary genetic sex for each type of sex-linked loci available, and outputs an agreed sex.

This function produces as output a dataframe with individuals in rows and 11 columns.

Usage

gl.infer.sex(gl_sexlinked, system = NULL, seed = NULL)

Arguments

gl_sexlinked

The output of function gl.keep.sexlinked (complete list with 5 elements). See explanation in "Details" section [required].

system

String that declares the sex-determination system of the species: 'zw' or 'xy' [required].

seed

User-defined integer for repeatability purposes. If not provided by user, it is chosen randomly by default. See "Details" section.

Details

Parameter gl_sexlinked must be the name of the output object (a list of 5 elements) produced by function gl.keep.sexlinked. Parameter seed must be an integer that will be used on the KMeans algorithm used by the function. We highly recommend choosing the seed to guarantee repeatability.

Note that this function was created with the explicit intent that a human checks the evidence for the sex assignments that do NOT agree for all types of sex-linked loci (called "indefinite sex assignments" and denoted as "*M" or "*F" in the last column of dataframe output). This human can then use their criterion to validate these assignments.

Function's output

This function creates a dataframe with one row per individual and 11 columns:

Value

A dataframe.

Author(s)

Custodian: Diana Robledo-Ruiz – Post to https://groups.google.com/d/forum/dartr

References

Examples

LBP_sexLinked <- gl.keep.sexlinked(x = LBP, system = "xy", plot.display = TRUE, ncores = 1)
inferred.sexes <- gl.infer.sex(gl_sexlinked = LBP_sexLinked, system = "xy", seed = 100)
inferred.sexes


Keeps loci that are sex linked

Description

This function identifies sex-linked and autosomal loci present in a SNP dataset (genlight object) using individuals with known sex. It identifies five types of loci: w-linked or y-linked, sex-biased, z-linked or x-linked, gametologous and autosomal.

This function produces as output a list with 5 elements, including one dataframe and 4 genlight objects with sex-linked loci.

Usage

gl.keep.sexlinked(
  x,
  system = NULL,
  ncores = 1,
  plot.display = TRUE,
  plot.theme = theme_dartR(),
  plot.colors = NULL,
  plot.file = NULL,
  plot.dir = NULL,
  verbose = NULL
)

Arguments

x

Name of the genlight object containing the SNP data. This genlight object needs to contain the sex of the individuals. See explanation in details [required].

system

String that declares the sex-determination system of the species: 'zw' or 'xy' [required].

ncores

Number of processes to be used in parallel operation. If ncores > 1 parallel operation is activated, see "Details" section [default 1].

plot.display

Creates four output plots. See explanation in details [default TRUE].

plot.theme

Theme for the plot. See Details for options [default theme_dartR()].[not yet implemented]

plot.colors

[not implemented yet]

plot.file

Name for the RDS binary file to save (base name only, exclude extension) [default NULL].

plot.dir

Directory to save the plot RDS files [default as specified by the global working directory or tempdir()].

verbose

Verbosity: 0, silent or fatal errors; 1, begin and end; 2, progress log; 3, progress and results summary; 5, full report [default NULL, unless specified using gl.set.verbosity].

Details

The genlight object must contain in gl@other$ind.metrics a column named "id", and a column named "sex" in which individuals with known-sex are assigned 'M' for male, or 'F' for female. The function ignores individuals that are assigned anything else or nothing at all (unknown-sex).

The creation of plots can be turned-off (plot.display = FALSE) in order to save a little bit of running time for very large datasets (>50,000 SNPs). However, we strongly encourage you to always inspect the output plots at least once to make sure everything is working properly.

Function's output

This function returns a list of 5 elements:

And four plots:

Value

A list of 5 elements and 4 plots.

Author(s)

Custodian: Diana Robledo-Ruiz – Post to https://groups.google.com/d/forum/dartr

References

Examples

LBP_sexLinked <- gl.keep.sexlinked(x = LBP, system = "xy", plot.display = TRUE, ncores = 1)
LBP_sexLinked$gametolog


Filters loci that are sex linked

Description

This function identifies sex-linked and autosomal loci present in a SNP dataset (genlight object) using individuals with known sex. It identifies five types of loci: w-linked or y-linked, sex-biased, z-linked or x-linked, gametologous and autosomal.

This function produces as output a dataframe and 2 plots.

Usage

gl.report.sexlinked(
  x,
  system = NULL,
  ncores = 1,
  plot.display = TRUE,
  plot.theme = theme_dartR(),
  plot.colors = NULL,
  plot.file = NULL,
  plot.dir = NULL,
  verbose = NULL
)

Arguments

x

Name of the genlight object containing the SNP data. This genlight object needs to contain the sex of the individuals. See explanation in details [required].

system

String that declares the sex-determination system of the species: 'zw' or 'xy' [required].

ncores

Number of processes to be used in parallel operation. If ncores > 1 parallel operation is activated, see "Details" section [default 1].

plot.display

Creates two output plots. See explanation in details [default TRUE].

plot.theme

Theme for the plot. See Details for options [default theme_dartR()].[not yet implemented]

plot.colors

[not implemented yet]

plot.file

Name for the RDS binary file to save (base name only, exclude extension) [default NULL].

plot.dir

Directory to save the plot RDS files [default as specified by the global working directory or tempdir()].

verbose

Verbosity: 0, silent or fatal errors; 1, begin and end; 2, progress log; 3, progress and results summary; 5, full report [default NULL, unless specified using gl.set.verbosity].

Details

The genlight object must contain in gl@other$ind.metrics a column named "id", and a column named "sex" in which individuals with known-sex are assigned 'M' for male, or 'F' for female. The function ignores individuals that are assigned anything else or nothing at all (unknown-sex).

The creation of plots can be turned-off (plot.display = FALSE) in order to save a little bit of running time for very large datasets (>50,000 SNPs). However, we strongly encourage you to always inspect the output plots at least once to make sure everything is working properly.

Function's output

This function returns two plots:

And a dataframe in which loci are in rows, and columns:

Value

A dataframe and 2 plots.

Author(s)

Custodian: Diana Robledo-Ruiz – Post to https://groups.google.com/d/forum/dartr

References

Examples

out <- gl.report.sexlinked(x = LBP, system = "xy", plot.display = TRUE, ncores = 1)


Setting up the package dartR.sexlinked

Description

Setting up dartR.sexlinked

Usage

zzz

Format

An object of class NULL of length 0.