Difference between revisions of "R Hackathon 1/InputtingTrees"

From Phyloinformatics
Jump to: navigation, search
 
Line 6: Line 6:
  
 
'''How do I input a phylogeny into R?'''
 
'''How do I input a phylogeny into R?'''
 +
 +
Okay, so you've just completed a phylogenetic analysis or otherwise obtained a file containing a phylogeny, and you'd like to use that phylogeny as a framework for comparative analysis in R.
  
 
The package APE can read phylogenies in either Newick or NEXUS format using the read.tree and read.nexus commands, respectively.  
 
The package APE can read phylogenies in either Newick or NEXUS format using the read.tree and read.nexus commands, respectively.  
Line 12: Line 14:
 
   MyTree <- read.nexus("MyNexusTreefile.nex")
 
   MyTree <- read.nexus("MyNexusTreefile.nex")
  
Either of these commands will create an identical object in R containing your tree. Taxon names should appear without quotes. Note that the NEXUS format supports the use of a translation table for taxon names.  
+
Either of these commands will create an identical object called "MyTree" in R containing your phylogeny. This object is in "phylo" format (more specifically, it is an object of class "phylo" and it can be used as input to various other functions in R.
 +
 
 +
Note that when you construct the original Newick or NEXUS files your taxon names should appear without quotes. R and APE support the use of translation tables for taxon names in NEXUS format, but not in Newick format.  
  
 
'''How do I export a phylogeny out of R?'''
 
'''How do I export a phylogeny out of R?'''
Line 18: Line 22:
 
The package APE can export phylogenies in either Newick or Nexus format using the write.tree and write.nexus commands, respectivly.   
 
The package APE can export phylogenies in either Newick or Nexus format using the write.tree and write.nexus commands, respectivly.   
  
   write.tree(geospiza$geospiza.tree, file="geospiza.tre"
+
   write.tree(MyTree, file="MyNewickTreefile.tre"
   write.nexus(geospiza$geospiza.tree, file="geospiza.nex"
+
   write.nexus(Mytree, file="MyNexusTreefile.nex"
 +
 
 +
'''What if I'm working with multiple trees?'''
 +
 
 +
No problem!  If the Newick or NEXUS file that you read into R contains multiple trees, a object called a list will be created. Each element of the list will be one individual tree from the original datafile.
 +
 
 +
You can also write multiple trees to a single file from R.  If the trees are already in a list, the syntax is exactly the same as above.

Revision as of 12:13, 11 December 2007

The commands referenced below are all part of special phylogenetic packages in R, not the basic R install. Be sure that you have installed and loaded the packages containing the commands referenced below before continuing. For example:

  library(ape)

This loads the package ape and its required packages gee, lattice and ade4 into your R session.

How do I input a phylogeny into R?

Okay, so you've just completed a phylogenetic analysis or otherwise obtained a file containing a phylogeny, and you'd like to use that phylogeny as a framework for comparative analysis in R.

The package APE can read phylogenies in either Newick or NEXUS format using the read.tree and read.nexus commands, respectively.

  MyTree <- read.tree("MyNewickTreefile.tre")
  MyTree <- read.nexus("MyNexusTreefile.nex")

Either of these commands will create an identical object called "MyTree" in R containing your phylogeny. This object is in "phylo" format (more specifically, it is an object of class "phylo" and it can be used as input to various other functions in R.

Note that when you construct the original Newick or NEXUS files your taxon names should appear without quotes. R and APE support the use of translation tables for taxon names in NEXUS format, but not in Newick format.

How do I export a phylogeny out of R?

The package APE can export phylogenies in either Newick or Nexus format using the write.tree and write.nexus commands, respectivly.

  write.tree(MyTree, file="MyNewickTreefile.tre"
  write.nexus(Mytree, file="MyNexusTreefile.nex"

What if I'm working with multiple trees?

No problem! If the Newick or NEXUS file that you read into R contains multiple trees, a object called a list will be created. Each element of the list will be one individual tree from the original datafile.

You can also write multiple trees to a single file from R. If the trees are already in a list, the syntax is exactly the same as above.