jaccard: Jaccard

jaccardR Documentation

Jaccard

Description

Jaccard beta diversity metric.

Usage

jaccard(counts, weighted = TRUE, pairs = NULL, cpus = n_cpus())

Arguments

counts

An OTU abundance matrix where each column is a sample, and each row is an OTU. Any object coercible with as.matrix() can be given here, as well as phyloseq, rbiom, SummarizedExperiment, and TreeSummarizedExperiment objects.

weighted

If TRUE, the algorithm takes relative abundances into account. If FALSE, only presence/absence is considered.

pairs

Which combinations of samples should distances be calculated for? The default value (NULL) calculates all-vs-all. Provide a numeric or logical vector specifying positions in the distance matrix to calculate. See examples.

cpus

How many parallel processing threads should be used. The default, n_cpus(), will use all logical CPU cores.

Value

A dist object.

Calculation

In the formulas below, x and y are two columns (samples) from counts. n is the number of rows (OTUs) in counts.

b = \displaystyle \frac{\sum_{i = 1}^{n} |x_i - y_i|}{\sum_{i = 1}^{n} x_i + y_i}

D = \displaystyle \frac{2b}{1 + b}

  x <- c(4, 0, 3, 2, 6)  
  y <- c(0, 8, 0, 0, 5)  
  bray <- sum(abs(x-y)) / sum(x+y)  
  2 * bray / (1 + bray)
  #>  0.7826087

References

Jaccard P 1908. Nouvellesrecherches sur la distribution florale. Bulletin de la Societe Vaudoise des Sciences Naturelles, 44(163). \Sexpr[results=rd]{tools:::Rd_expr_doi("10.5169/seals-268384")}

See Also

Other beta_diversity: bray_curtis(), canberra(), euclidean(), generalized_unifrac(), gower(), kulczynski(), manhattan(), unweighted_unifrac(), variance_adjusted_unifrac(), weighted_normalized_unifrac(), weighted_unifrac()

Examples

    # Example counts matrix
    ex_counts
    
    # Jaccard weighted distance matrix
    jaccard(ex_counts)
    
    # Jaccard unweighted distance matrix
    jaccard(ex_counts, weighted = FALSE)
    
    # Only calculate distances for A vs all.
    jaccard(ex_counts, pairs = 1:3)
    

ecodive documentation built on Aug. 23, 2025, 1:13 a.m.