all.equal.DNAbin: Compare DNA Sets

View source: R/DNA.R

all.equal.DNAbinR Documentation

Compare DNA Sets


Comparison of DNA sequence sets, particularly when aligned.


## S3 method for class 'DNAbin'
all.equal(target, current, plot = FALSE, ...)


target, current

the two sets of sequences to be compared.


a logical value specifying whether to plot the sites that are different (only if the labels of both alignments are the same).


further arguments passed to image.DNAbin.


If the two sets of DNA sequences are exactly identical, this function returns TRUE. Otherwise, a detailed comparison is made only if the labels (i.e., rownames) of target and current are the same (possibly in different orders). In all other cases, a brief description of the differences is returned (sometimes with recommendations to make further comparisons).

This function can be used for testing in programs using isTRUE (see examples below).


TRUE if the two sets are identical; a list with two elements (message and different.sites) if a detailed comparison is done; or a vector of mode character.


Emmanuel Paradis

See Also

image.DNAbin, clustal, checkAlignment, the generic function: all.equal


woodm2 <- woodmouse
woodm2[1, c(1:5, 10:12, 30:40)] <- as.DNAbin("g")
res <- all.equal(woodmouse, woodm2, plot = TRUE)

## if used for testing in R programs:
isTRUE(all.equal(woodmouse, woodmouse)) # TRUE
isTRUE(all.equal(woodmouse, woodm2)) # FALSE

all.equal(woodmouse, woodmouse[15:1, ])
all.equal(woodmouse, woodmouse[-1, ])
all.equal(woodmouse, woodmouse[, -1])

## Not run: 
## To run the followings you need internet and Clustal and MUSCLE
## correctly installed.
## Data from Johnson et al. (2006, Science)
refs <- paste("DQ082", 505:545, sep = "")
DNA <- read.GenBank(refs)
DNA.clustal <- clustal(DNA)
DNA.muscle <- muscle(DNA)
isTRUE(all.equal(DNA.clustal, DNA.muscle)) # FALSE
all.equal(DNA.clustal, DNA.muscle, TRUE)

## End(Not run)

ape documentation built on March 31, 2023, 6:56 p.m.