
LD(x, lim, lim2, measure = c("r2", "r", "D"), trim = TRUE)
Logical
. If TRUE
, the values above 1 or below -1 are replaced by 1 and -1 respectively. lim2
is missing, the LD is computed between all SNPs with indices between lim[1]
and lim[2]
;
else, the LD is computed between the SNPs in the range given by lim
and those in the range given by lim2
.
Note that the LD estimates are moment estimates (which are less precise than Maximum Likelihood Estimates).
If standardize(x) = "none"
, x
will be standardized
using x@mu
and x@sigma
. If standardize(x) = "p"
, the moment estimates can produce $r$
values outside of the range $[-1;1]$, hence the parameter trim
. We recommend to set
standardize(x) <- "mu"
(trimming can still be necessary due to rounding errors).
LD.thin
, LD.plot
# Load data
data(AGT)
x <- as.bed.matrix(AGT.gen, AGT.fam, AGT.bim)
# Compute LD
ld.x <- LD(x, c(1,ncol(x)))
# Plot a tiny part of the LD matrix
LD.plot( ld.x[1:20,1:20], snp.positions = x@snps$pos[1:20] )
Run the code above in your browser using DataLab