Git Product home page Git Product logo

spatial_statistics's Introduction

SciKit-GStat

Info: scikit-gstat needs Python >= 3.6!

https://img.shields.io/pypi/v/scikit-gstat?color=green&logo=pypi&logoColor=yellow&style=flat-square:alt:PyPI https://img.shields.io/github/v/release/mmaelicke/scikit-gstat?color=green&logo=github&style=flat-square:alt:GitHubrelease(latestbydate) Codecov

How to cite

In case you use SciKit-GStat in other software or scientific publications, please reference this module. There is a GMD publication. Please cite it like:

Mälicke, M.: SciKit-GStat 1.0: a SciPy-flavored geostatistical variogram estimation toolbox written in Python, Geosci. Model Dev., 15, 2505–2532, https://doi.org/10.5194/gmd-15-2505-2022, 2022.

The code itself is published and has a DOI. It can be cited as:

Mirko Mälicke, Romain Hugonnet, Helge David Schneider, Sebastian Müller, Egil Möller, & Johan Van de Wauw. (2022). mmaelicke/scikit-gstat: Version 1.0 (v1.0.0). Zenodo. https://doi.org/10.5281/zenodo.5970098

Full Documentation

The full documentation can be found at: https://mmaelicke.github.io/scikit-gstat

Description

SciKit-Gstat is a scipy-styled analysis module for geostatistics. It includes two base classes Variogram and OrdinaryKriging. Additionally, various variogram classes inheriting from Variogram are available for solving directional or space-time related tasks. The module makes use of a rich selection of semi-variance estimators and variogram model functions, while being extensible at the same time. The estimators include:

  • matheron
  • cressie
  • dowd
  • genton
  • entropy
  • two experimental ones: quantiles, minmax

The models include:

  • sperical
  • exponential
  • gaussian
  • cubic
  • stable
  • matérn

with all of them in a nugget and no-nugget variation. All the estimator are implemented using numba's jit decorator. The usage of numba might be subject to change in future versions.

Installation

PyPI

pip install scikit-gstat

Note: It can happen that the installation of numba or numpy is failing using pip. Especially on Windows systems. Usually, a missing Dll (see eg. #31) or visual c++ redistributable is the reason.

GIT:

git clone https://github.com/mmaelicke/scikit-gstat.git
cd scikit-gstat
pip install -r requirements.txt
pip install -e .

Conda-Forge:

From Version 0.5.5 on scikit-gstat is also available on conda-forge. Note that for versions < 1.0 conda-forge will not always be up to date, but from 1.0 on, each minor release will be available.

conda install -c conda-forge scikit-gstat

Quickstart

The Variogram class needs at least a list of coordiantes and values. All other attributes are set by default. You can easily set up an example by using the skgstat.data sub-module, that includes a growing list of sample data.

import skgstat as skg

# the data functions return a dict of 'sample' and 'description'
coordinates, values = skg.data.pancake(N=300).get('sample')

V = skg.Variogram(coordinates=coordinates, values=values)
print(V)
spherical Variogram
-------------------
Estimator:         matheron
Effective Range:   353.64
Sill:              1512.24
Nugget:            0.00

All variogram parameters can be changed in place and the class will automatically invalidate and update dependent results and parameters.

V.model = 'exponential'
V.n_lags = 15
V.maxlag = 500

# plot - matplotlib and plotly are available backends
fig = V.plot()

./example.png

spatial_statistics's People

Contributors

mmaelicke avatar rhugonnet avatar helgedavidschneider avatar muellerseb avatar kentaroaoyama avatar ealonsogzl avatar itinderjot avatar johanvdw avatar codacy-badger avatar sebasmos avatar

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.