Skip to content

lrocax/Momocs

 
 

Repository files navigation

Build Status

Momocs, morphometrics using R

Momocs is an R package intended to ease and to popularize morphometrics, the quantitative analysis of form. It aims at gathering the most common approaches: traditional morphometrics, global descriptors, open outlines, closed outlines and configuration of landmarks into the same, open-source, environment. And using the same, simple and easy-to-learn, open-source, and extendable grammar both for the user and programmers. Momocs hinges on the core functions developed in the must-have book Morphometrics with R by Julien Claude (2008), wraps them into the same coding grammar, and extends them both graphically and statistically.

Use Momocs

Get the last version:

  • First get devtools with install.packages("devtools")
  • Then, download and load the very last version with:
devtools::install_github("vbonhomme/Momocs", build_vignettes=TRUE)
library(Momocs)

Note that:

  • The current CRAN version (0.2) has been published in Journal of Statistical Software
  • Since then, Momocs has been almost entirely rewritten and considerably enlarged.
  • A CRAN version will be released when most of the features planned below (*) will be part of Momocs.
  • Also, some tutorials are on their way: browseVignettes("Momocs"). Same thing, here

You are welcome to:

Features

Data acquisition + Babel

  • Outline extraction
  • Landmark definition on outlines* (via StereoMorph)
  • Open curves digitization with bezier curves* (via StereoMorph)
  • Import from .nts, .tps, PAST, .txt, etc.
  • Export to .txt, etc.

Outline analysis

  • Elliptical Fourier analysis (efourier)
  • Radius Variation Fourier analysis (rfourier)
  • Tangent Angle Fourier analysis (tfourier)
  • Calibration for all methods (calibrate_reconstructions, calibrate_deviations, calibrate_harmonicpower)

Open-outlines

  • Natural (raw) polynomials (npoly)
  • Orthogonal (Legendre) polynomials (opoly)
  • Discrete Cosinus Transform (dfourier)
  • Same calibration methods as above

Configuration of landmarks

  • Full Generalized Procrustes Adjustment (fgProcrustes)
  • Resistant Fit Procrustes Adjustments*
  • Sliding semi-landmarks*

Traditional morphometrics and global shape descriptors

  • Some built-in facilities for multivariate analysis*
  • A long list of shape scalars (eg. eccentricity, rectilinearity, etc.)

Data handling

  • filter, select, slice, mutate ala dplyr
  • split according to a factor (eg. a 2D view)
  • combine several 2D views

Multivariate analysis

  • Mean shape (groupwise) calculations (mshapes)
  • Principal component analysis (PCA)
  • Multivariate analysis of variance (MANOVA + pairwise testing MANOVA_PW)
  • Linear discriminant analysis (LDA)
  • Hierarchical clustering (CLUST)
  • Regression trees*
  • K-means*
  • Multidimensional scaling*
  • Allometry / modularity testing*

Graphical methods

  • Elegant ggplot2 plots
  • Morphological spaces, when possible, for multivate analyses (and for combined views)
  • Thin plate splines and variation around deformation grids
  • Family pictures and quick inspection of whole datasets (panel, stack, plot, radar, etc.)

Various

  • Toy and published datasets
  • Vignettes
  • Shiny demonstrators/helpers

Architecture

Here is a scheme of the Momocs' architecture: Momocs functionnal architecture

Packages

No packages published

Languages

  • R 100.0%