Skip to main content

A python implementation of spatial entropy

Project description

SpatialEntropy

Test PyPI version

This is a python implementation of spatial entropy, inspired by the R package spatentropy. For now, two spatial entropy methods have been implemented:

  • Leibovici’s entropy
  • Altieri's entropy

Compare with shannon entropy

Compare

Installation

It's available on PyPI

pip install spatialentropy

Usage

Check out an example

Let's generate some fake data first:

import numpy as np

points = 100 * np.random.randn(10000, 2) + 1000
types = np.random.choice(range(30), 10000)

Here we have 10,000 points and then we assigned each point with a category from 30 categories.

Quick start

from spatialentropy import leibovici_entropy

e = leibovici_entropy(points, types)
e.entropy

Leibovici entropy

To calculate the leibovici entropy, we need to set up a distance or an interval to define the co-occurrences.

from spatialentropy import leibovici_entropy

# set the distance cut-off to 5
e = leibovici_entropy(points, types, d=5)
# if you want to change the base of log
e = leibovici_entropy(points, types, base=2)

e.entropy # to get the entropy value
e.adj_matrix # to get the adjacency matrix
e.pairs_counts # to get the counts for each pair of co-occurrences

Altieri entropy

To calculate the altieri entropy, we need to set up intervals to define the co-occurrences.

from spatialentropy import altieri_entropy

# set cut=2, it means we will create 3 intervals evenly from [0,max]
e = altieri_entropy(points, types, cut=2)

# or you want to define your own intervals
e = altieri_entropy(points, types, cut=[0,4,10])

e.entropy # to get the entropy value, e.entropy = e.mutual_info + e.residue
e.mutual_info # the spatial mutual information
e.residue # the spatial residue entropy
e.adj_matrix # to get the adjacency matrix

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

spatialentropy-0.1.0.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

spatialentropy-0.1.0-py3-none-any.whl (6.8 kB view details)

Uploaded Python 3

File details

Details for the file spatialentropy-0.1.0.tar.gz.

File metadata

  • Download URL: spatialentropy-0.1.0.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.0

File hashes

Hashes for spatialentropy-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f4019c3487e66f94a6095441adb50781ddb977614db6dffd6113dd57faffab24
MD5 9af9f8dec513123d28653911c398a186
BLAKE2b-256 2a889201d1a0050b8d650f1562944d5c88bfafb49c42728c3620ce105d785128

See more details on using hashes here.

File details

Details for the file spatialentropy-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: spatialentropy-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.0

File hashes

Hashes for spatialentropy-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 50cd0a1256d9c3f9730e891e42384e5f3ca05e52f21f746f6823feb3d4a88760
MD5 2e1f8ba1c17f44c4c033b7a88e4437e9
BLAKE2b-256 f8270dc174e638873627a106f8de1a37fe803231fb9365205d09d0837eb08502

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