Data Analysis Tips

Basics

 * Metropolis-Hastings algorithm

Crash Course

 * Materials from Phil Gregory's Website
 * Material from Center for Astrostatistics website


 * An Introduction to Bayesian Statistical Modeling using PyMC - Christopher J. Fonnesbeck and Abie Flaxman on SciPy2011
 * There are plenty other useful courses about SciPy and Python.
 * The Video content is GFW unfriendly!!


 * Your Gateway to the Bayesian Realm on Astrobites
 * Very good place to start !!


 * Code you can use: the MCMC Hammer on Astrobites
 * Introduction to emcee


 * PyMC for Bayesian models
 * Nice example for PyMC [GFW!!]


 * More on MCMC in Python on science,stories,etc blog
 * Astrophysical related blog, provide a slightly more complex example. [GFW!!]


 * MCMC and fitting models to data from Scientific Clearing House blog [GFW!!]
 * Two relevant posts: Bayesian parameter estimation and Bayesian model comparison


 * Gibbs sampler in various languages (revisited) from Darren Wilkinson's research blog
 * Including Python, PyPy and C.
 * There are other useful posts on this blog [GFW!!]


 * Astrostatistics Seminar Series @UFL
 * Including Bayesian Data Analysis for the Physical Sciences by Phill Gregory; and A Bayesian toolbox for testing models in astronomy by Martin Hendry


 * 实用统计软件
 * 部分内容可能有帮助

Reference

 * Bayes in the sky: Bayesian inference and model selection in cosmology
 * Fits, and especially linear fits, with errors on both axes, extra variance of the data points and other complications

Useful Tools

 * PyMC
 * PyMC is a python module that implements Bayesian statistical models and fitting algorithms, including Markov chain Monte Carlo. Its flexibility and extensibility make it applicable to a large suite of problems. Along with core sampling functionality, PyMC includes methods for summarizing output, plotting, goodness-of-fit and convergence diagnostics.
 * Using Metropolis-Hartings algorithm
 * The document can be found here


 * bayesian-inference - Python package for object-oriented bayesian inference
 * This package is a collection of useful classes for basic Bayesian inference. Currently, its main goal is to be a tool for learning and exploration of Bayesian probabilistic calculations.
 * The documentations can be found here


 * MultiNest-Efficient and Robust Bayesian Inference
 * MultiNest is a Bayesian inference tool which calculates the evidence and explores the parameter space which may contain multiple posterior modes and pronounced (curving) degeneracies in moderately high dimensions.
 * A python wrapper: pymultinest


 * funcFit-A convenient fitting interface in PyAstronomy
 * The funcFit package provides a convenient interface to the fitting algorithms provided by the popular SciPy and pymc packages. It implements a very flexible and simple parameter handling mechanism making fitting in Python a much more enjoyable experience.


 * BayesPy
 * BayesPy provides tools for Bayesian inference with Python. The user constructs a model as a Bayesian network, observes data and runs posterior inference. The goal is to provide a tool which is efficient, flexible and extendable enough for expert use but also accessible for more casual users.


 * MCMC-IDL by Ankur Desai
 * IDL Codes by Chris Beaumont
 * LINMIX_ERR, and MLINMIX_ERR by Brandon Kelly

Mixture Gaussian and the Modelling of Histograms

 * 关于Mixture Model的Wikipedia词条
 * 漫谈 Clustering (3): Gaussian Mixture Model: Blog from Free Mind
 * Lecture about GMM by Douglas Reynolds @ MIT

Potential Tools

 * Solber-Solution Breeder
 * Solber is a simple IDL optimization routine loosely based on genetic algorithms
 * The code can be found here; and example about Mixture Gaussian model can be found here
 * The webpage of the author also includes very interesting information.
 * Papers about the algorithm behind Solber can be found here


 * XD-Extreme Deconvolution
 * Density estimation using Gaussian mixtures in the presence of noisy, heterogeneous and incomplete data
 * The associated arXiv paper can be found here
 * Examples about its application is here
 * Referred papers using XD is here


 * Extreme Deconvolution using the AstroML Python Library
 * Another similar one


 * PyMix
 * The Python Mixture Package (PyMix) is a freely available Python library implementing algorithms and data structures for a wide variety of data mining applications with basic and extended mixture models
 * The tutorial can be found here
 * mixtools in R package
 * A collection of R functions for analyzing finite mixture models.
 * Documents for this package can be found Here
 * A blog article about how to use it (GFW unfriendly)


 * PyPR-Python Pattern Recognition


 * em-a python package for Gaussian mixture models
 * Since July 2007, the toolbox is included in the learn scikits (scikits).


 * ECGMM-Error Corrected Gaussian Mixture Model
 * Traditional Gaussian Mixture Model does not handle the measurement errors of each data point. In many applications, the data point themselves are uncertain to certain level and then a error corrected (or weighted if you would like) Gaussian Mixture Model is desirable.