Package: OUwie 3.02

OUwie: Analysis of Evolutionary Rates in an OU Framework

Estimates rates for continuous character evolution under Brownian motion and a new set of Ornstein-Uhlenbeck based Hansen models that allow both the strength of the pull and stochastic motion to vary across selective regimes. Beaulieu et al (2012).

Authors:Jeremy M. Beaulieu <[email protected]>, Brian O'Meara <[email protected]>

OUwie_3.02.tar.gz
OUwie_3.02.zip(r-4.7)OUwie_3.02.zip(r-4.6)OUwie_3.02.zip(r-4.5)
OUwie_3.02.tgz(r-4.6-any)OUwie_3.02.tgz(r-4.5-any)
OUwie_3.02.tar.gz(r-4.7-any)OUwie_3.02.tar.gz(r-4.6-any)
OUwie_3.02.tgz(r-4.6-emscripten)
manual.pdf |manual.html
card.svg |card.png
OUwie/json (API)

# Install 'OUwie' in R:
install.packages('OUwie', repos = c('https://thej022214.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/thej022214/ouwie/issues

Datasets:
  • trait - An example dataset
  • trait - An example dataset
  • tree - An example dataset
  • tree - An example dataset

On CRAN:

Conda:

8.13 score 10 stars 223 scripts 509 downloads 19 exports 83 dependencies

Last updated from:ef777e5609. Checks:7 ERROR, 2 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-devel-x86_64ERROR200
source / vignettesOK357
linux-release-x86_64ERROR197
macos-release-arm64ERROR145
macos-oldrel-arm64ERROR171
windows-develERROR201
windows-releaseERROR152
windows-oldrelERROR143
wasm-releaseOK130

Exports:check.identifyfix.kappagetModelAvgParamsgetModelTablegetOUParamStructurehOUwiehOUwie.fixedhOUwie.reconhOUwie.simhOUwie.thoroughhOUwie.walkOUwieOUwie.ancOUwie.bootOUwie.contourOUwie.dredgeOUwie.fixedOUwie.formatOUwie.sim

Dependencies:apebitopscliclusterGenerationcodacodetoolscolorspacecombinatcorHMMcorpcorcpp11data.tabledeldirDEoptimdeSolvedigestdoParallelexpmfarverfastmatchforeachfuturefuture.applygeigergenericsGenSAggplot2globalsgluegmpgridExtragtableigraphinterpisobanditeratorsjsonlitelabelinglatticelhslifecyclelistenvmagrittrmapsMASSMatrixmnormtmvtnormncbitnlmenloptrnnetnumDerivoptimParallelpaleotreeparallellyphangornphylolmphytoolspkgconfigplyrpngquadprogR6RColorBrewerRcppRcppEigenRCurlreshape2rlangRmpfrRTMBS7scalesscatterplot3dstringistringrsubplexTMBvctrsviridisviridisLitewithr

Calculation Update

Rendered fromcalculationUpdate.Rmdusingknitr::rmarkdownon May 15 2026.

Last update: 2026-04-27
Started: 2026-03-06

hOUwie User Guide

Rendered fromhOUwieStarterGuide.Rmdusingknitr::rmarkdownon May 15 2026.

Last update: 2023-01-19
Started: 2023-01-18

New additions as of OUwie 2.1

Rendered fromOUwie_2.1_adds.Rmdusingknitr::rmarkdownon May 15 2026.

Last update: 2024-08-27
Started: 2020-05-12

Readme and manuals

Help Manual

Help pageTopics
A test of regime identifiabilitycheck.identify
Dents the likelihood surface This takes any values that are better (lower) than the desired negative log likelihood and reflects them across the best_neglnL + delta line, "denting" the likelihood surface.dent_likelihood
Propose new values This proposes new values using a normal distribution centered on the original parameter values, with desired standard deviation. If any proposed values are outside the bounds, it will propose again.dent_propose
Sample points from along a ridge This "dents" the likelihood surface by reflecting points better than a threshold back across the threshold (think of taking a hollow plastic model of a mountain and punching the top so it's a volcano). It then uses essentially a Metropolis-Hastings walk to wander around the new rim. It adjusts the proposal width so that it samples points around the desired likelihood. This is better than using the curvature at the maximum likelihood estimate since it can actually sample points in case the assumptions of the curvature method do not hold. It is better than varying one parameter at a time while holding others constant because that could miss ridges: if I am fitting 5=x+y, and get a point estimate of (3,2), the reality is that there are an infinite range of values of x and y that will sum to 5, but if I hold x constant it looks like y is estimated very precisely. Of course, one could just fully embrace the Metropolis-Hastings lifestyle and use a full Bayesian approach.dent_walk
An example datasettrait tree
Adjust tree for matrix conditionfix.kappa
Model average the parameter estimates over severl hOUwie fits.getModelAvgParams
Generate a table from a set of hOUwie models describing their relative fit to data.getModelTable
Generate a continuous model parameter structuregetOUParamStructure
Fit a joint model of discrete and continuous characters via maximum-likelihood.hOUwie
Fit a joint model of discrete and continuous characters via maximum-likelihood with fixed regimes.hOUwie.fixed
Reconstruct the marginal probability of discrete node states under the hOUwie model.hOUwie.recon
Simulate a discrete and continuous character following a Markov and Ornstein-Uhlenbeck model.hOUwie.sim
Rerun a set of hOUwie models with the best mappings of the set.hOUwie.thorough
Sample points from along a ridge for a hOUwie modelhOUwie.walk
Generalized Hansen modelsOUwie
Estimate ancestral states given a fitted OUwie modelOUwie.anc
Parametric bootstrap functionOUwie.boot
Generates data for contour plot of likelihood surfaceOUwie.contour
Generalized Detection of shifts in OU processOUwie.dredge
Generalized Hansen model likelihood calculatorOUwie.fixed
Format data and tree for OUwieOUwie.format
Generalized Hansen model simulatorOUwie.sim
Plot the dented samples This will show the univariate plots of the parameter values versus the likelihood as well as bivariate plots of pairs of parameters to look for ridges.plot.dentist
Contour plotplot.OUwie.contour
Print dentist print summary of output from dent_walkprint.dentist
Summarize dentist Display summary of output from dent_walksummary.dentist