Giter VIP home page Giter VIP logo

ips's Introduction

ips: interfaces to phylogenetic software

NOTE: ips contains most functions that were formerly included in the phyloch package plus some more recent functions. Those phyloch functions related to tree plotting have been moved to the viper package.

This is a bundle of functions that present interfaces to popular phylogenetic software for sequence alignment, masking of sequence alignments, and estimation of phylogenies and ancestral character states. In additions, there functions for reading, manipulating and writing phylogenetic data (multiple sequence alignments and phylogenetic trees).

Introduction

There are several functions for reading and writing DNA sequences in FASTA, PHYLIP, and NEXUS format: read.fas, read.phy, read.nex, write.fas, write.phy, and write.nex. Some functions are available for integrating BEAST with R. XML input files for BEAST can be generated with rbeauti. Two functions are designed to read TreeAnnotator output: read.beast will render an object of class phylo with additional node statistics appended as list elements. These additional node statistics will be lost be the subsequent use of ladderize or rotate (or similar functions that change the ordering of internal nodes).read.beast.table also parses the TreeAnnotator output, but returns a matrix of node statistics. This package itself does not implement techniques for phylogenetic analyses, but provides a series of wrappers for commonly used software packages. Sequence alignment can be done with the mafft and prank; cleaning of sequences with gblocks and aliscore. The function raxml and mrbayes are intended for phylogenetic tree search. Running mrbayes with argument run = FALSE can be used to create MrBayes-executable NEXUS files. Finally, wrappers are provided for Multistate in the BayesTraits package (see multistateML and multistateMCMC). Several plotting functions (HPDbars, clade.bars, box.clades, box.tips, tip.color, edge.color have been moved to the viper package.

Installation

ips is available via CRAN and can be installed:

install.packages("ips")

Or you can install the development version via GitHub with:

# install.packages("devtools")
devtools::install_github("heibl/ips")

ips's People

Contributors

franzkrah avatar heibl avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

ips's Issues

[request] mafft function

Are you still maintaining the CRAN version?

Can you please add the option to mafft to add options freely?
I really need the --unalignlevel --allowshift --keeplength options, but I have to fix() it every time.

Implementing --reorder option in ips::mafft

Thank you for developing this function! It is helping me a lot!
Is it possible to implement the option "--reorder" so the output of the alignment is based on the alignments instead of in the input fasta file order?

**More specifically, I'd like to run:

mafft --reorder --adjustdirection --auto input

**I'm using the instruction:

ips::mafft(this.aligmment, method='auto', options = c("--adjustdirection","--reorder")

**But I get the error:

Error in match.arg(options, c("--adjustdirection", "--adjustdirectionaccurately")) :
'arg' must be of length 1

Thanks in advance!

read.beast.table removed?

Hello,

In R 4.0.2 (om MacOSX) I tried:

install.packages("ips")
library(ips)
?read.beast()
?read.beast.table()

Were these functions removed from ips?

Thanks

Fernando

Link to the babette R package suite in ips::rbeauti

Dear dr Heibl,

I feel ips is a good generalist R package, allowing to work with many phylogenetic tools. For example, the ips::rbeauti function creates a general BEAUti XML file, to be used by BEAST2.

I suggest to add a link in the ips::rbeauti documentation to a specialized R package suite [1] to work with BEAST2 called babette [2] (disclaimer: I wrote that package suite), so that people that want to do something more specialized than ips::rbeauti can better find this package.

If you agree, I volunteer to create a Pull Request with this suggestion, but if you prefer to do it yourself, would also be fine.

Do you agree this is a good idea?

Cheers, Richel Bilderbeek

  • [1] I use the word 'suite' as babette consists out of five packages
  • [2] Bilderbeek, Richèl JC, and Rampal S. Etienne. "babette: BEAUti 2, BEAST 2 and Tracer for R." Methods in Ecology and Evolution (2018). https://doi.org/10.1111/2041-210X.13032

Make package for conda-forge

@heibl I'm packaging ips for conda-forge. You don't have to do anything, but I'll add you as a recipe maintainer if you are interested.

In practice, there is very little to do to maintain R package recipes on conda-forge. There is a bot which will notice whenever you publish a new version on CRAN. It then updates the recipe accordingly and creates a pull request. If you are a maintainer, you'll get notified when that happens and the results of automated testing, and can take whatever actions are necessary (typically accept the pull request). Of course maintainers also get notifications if someone reports issues with the package on conda-forge.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.