Skip to main content

OBSOLETE. This package is no longer maintained because it has been replaced by the package piicrgmms.

Project description

GMMClusteringAlgorithms

OBSOLETE. This package is no longer maintained and has been replaced by the package piicrgmms, which retains all the same capabilities. GMMClusteringAlgorithms was a package for implementing Gaussian Mixture Models as a data analysis tool in PI-ICR Mass Spectrometry experiments. It was first developed in the Fall of 2020 to be used in PI-ICR experiments at the Canadian Penning Trap (CPT) mass spectrometer at Argonne National Laboratory (Lemont, IL, U.S.). It has since been transferred to the package 'piicrgmms'. At its core is a modified version of the 'mixture' module from the package scikit-learn. The modified version, sklearn_mixture_piicr, retains all the same components as the original version. In addition, it contains two classes with restricted fitting algorithms: a GMM fit where the phase dimension of the component means is not a parameter, and a BGM fit where the number of components is not a parameter. The rest of the package facilitates quick, intuitive use of the GMM algorithms through the use of 4 classes, and visualization methods for debugging.

1. DataFrame

  • This class is responsible for processing the .lmf file and phase shifts. As attributes, it holds the processed data for easy access, as well as any data cuts.

2. GaussianMixtureModel

  • This class fits Gaussian Mixture Models to the DataFrame object. As parameters, it takes:
    1. Cartesian/Polar coordinates
    2. Number of components to use
    3. Covariance matrix type
    4. Information criterion
  • Allows for 'strict' fits, i.e. fits where the number of components is specified.

3. BayesianGaussianModel

  • Exact same as the GaussianMixtureModel class, but uses the BayesianGaussianModel class from scikit-learn instead of the GaussianMixtureModel class.

4. PhaseFirstGaussianModel

  • Implements a fit where the phase dimension is fit to first, followed by a GMM fit to both spatial dimensions in which the phase dimension of the component means is fixed. This type of fit was found to work especially well with data sets in which there were many species, like the 168Ho data.

  • Only works with Polar coordinates

Each model class also includes the ability to visualize results in several ways (clustering results, One-dimensional histograms, Probability density function) and the ability to copy fit results to the clipboard for pasting into an Excel spreadsheet.

Installation

Dependencies

GMMClusteringAlgorithms requires:

  • Python (>=3.6)
  • scikit-learn (>=0.23.2)
  • pandas (>=1.2.0)
  • matplotlib (>=3.3.0)
  • lmfit (>=1.0.0)
  • joblib (>=1.0.0)
  • tqdm (>=4.56.0)
  • pillow (>=8.1.0)
  • webcolors(>=1.11.1)

User Installation

This package is now obsolete. Please see the package piicrgmms, which is current.

Assuming Python and pip have already been installed, decide whether you want a system-wide or local installation, and which Python distribution (e.g. Anaconda) you want to install under. Then, open the Command Prompt (for regular Python distribution) or the Prompt for another distribution (e.g. Anaconda Prompt for Anaconda), and run either:

  • pip install GMMClusteringAlgorithms for a system-wide installation (works for regular Python distributions only), OR
  • pip install -U GMMClusteringAlgorithms for a local installation.

If you want to install in a virtual environment instead, then navigate to the virtual environment's directory, activate the virtual environment, and install with the commands above.

Source code

You can check the latest source code with the command
git clone https://github.com/colinweber27/GMMClusteringAlgorithms

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

GMMClusteringAlgorithms-0.1.28.tar.gz (66.2 kB view details)

Uploaded Source

Built Distribution

GMMClusteringAlgorithms-0.1.28-py2.py3-none-any.whl (78.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file GMMClusteringAlgorithms-0.1.28.tar.gz.

File metadata

  • Download URL: GMMClusteringAlgorithms-0.1.28.tar.gz
  • Upload date:
  • Size: 66.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for GMMClusteringAlgorithms-0.1.28.tar.gz
Algorithm Hash digest
SHA256 4430fc46abc76b4311400182facaccec7cf04193849ecc91672db8585aef2ebe
MD5 9d76d5177cd3294f6f559f4049f20563
BLAKE2b-256 929310712cdd5c0167e051fa50f5ab31cef5456640f6ade68c25c88437f85a35

See more details on using hashes here.

File details

Details for the file GMMClusteringAlgorithms-0.1.28-py2.py3-none-any.whl.

File metadata

  • Download URL: GMMClusteringAlgorithms-0.1.28-py2.py3-none-any.whl
  • Upload date:
  • Size: 78.3 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for GMMClusteringAlgorithms-0.1.28-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 8f3e6dc1192760a3a92329208037f1dd879c254a32b9aa05f3fa22289d7d8f74
MD5 80c53ec5b16d186d495035e6b22bd094
BLAKE2b-256 6d1c84585a926503a0a227c3c233100ca11667c0206cc42734c041e53752be23

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page