Learn R Programming

ape (version 4.0)

write.nexus.data: Write Character Data in NEXUS Format

Description

This function writes in a file a list of sequences in the NEXUS format. The names of the vectors of the list are used as taxon names.

Usage

write.nexus.data(x, file, format = "dna", datablock = TRUE, interleaved = TRUE, charsperline = NULL, gap = NULL, missing = NULL)

Arguments

x
a matrix or a list of sequences each made of a single vector of mode character where each element is a character state (e.g., “A”, “C”, ...) Objects of class of “DNAbin” are accepted.
file
a file name specified by either a variable of mode character, or a double-quoted string.
format
a character string specifying the format of the sequences. Two choices are possible: “dna” (the default) or “protein”, or any unambiguous abbreviation of these (case insensitive).
datablock
a logical, if TRUE the data are written in a single DATA block. If FALSE data is written in TAXA and CHARACTER blocks. Default is TRUE.
interleaved
a logical, if TRUE the data is written in interleaved format with number of characters per line as specified with charsperline = numerical_value. If FALSE, data is written in sequential format. Default is TRUE.
charsperline
a numeric specifying the number of characters per line when used with interleaved = TRUE. Default is 80.
gap
a character specifying the symbol for gap. Default is “-”.
missing
a character specifying the symbol for missing data. Default is “?”.

Value

None (invisible ‘NULL’).

Details

If the sequences have no names, then they are given “1”, “2”, ..., as names in the file.

Sequences must be all of the same length.

Default symbols for missing data and gaps can be changed by using the missing and gap commands.

References

Maddison, D. R., Swofford, D. L. and Maddison, W. P. (1997) NEXUS: an extensible file format for systematic information. Systematic Biology, 46, 590--621.

See Also

read.nexus,write.nexus, read.nexus.data

Examples

Run this code
## Not run: 
# ## Write interleaved DNA data with 100 characters per line in a DATA block
# data(woodmouse)
# write.nexus.data(woodmouse, file= "wood.ex.nex", interleaved = TRUE, charsperline = 100)
# ## Write sequential DNA data in TAXA and CHARACTERS blocks
# data(cynipids)
# write.nexus.data(cynipids, file = "cyn.ex.nex", format = "protein",
#                  datablock = FALSE, interleaved = FALSE)
# unlink(c("wood.ex.nex", "cyn.ex.nex"))
# ## End(Not run)

Run the code above in your browser using DataLab