Skip to main content

Simple Python interface with the spatstat R package using rpy2

Project description

spatstat-interface

Build PyPi version codecov Code style: black

Simple Python interface with the spatial statistics R package spatstat using rpy2.

Dependencies

Installation

You may consider using poetry to manage your whole project as described here https://github.com/guilgautier/template-python-project.

Install the project as a dependency

  • Install the latest version published on PyPi version

    # activate your virtual environment an run
    poetry add spatstat-interface
    # pip install spatstat-interface
    
  • Install from source (this may be broken)

    # activate your virtual environment an run
    poetry add git+https://github.com/For-a-few-DPPs-more/spatstat-interface.git
    # pip install git+https://github.com/For-a-few-DPPs-more/spatstat-interface.git
    

Install in editable mode and potentially contribute to the project

You may consider forking the repository.

In any case, your can clone the repository

  • if you have forked the repository

    git clone https://github.com/your_user_name/spatstat-interface.git
    
  • if you have not forked the repository

    git clone https://github.com/For-a-few-DPPs-more/spatstat-interface.git
    

Editable install with poetry

The package can be installed in editable mode along with

  • main (non-optional) dependencies, see [tool.poetry.dependencies] in pyproject.toml
  • development dependencies, [tool.poetry.group.dev.dependencies] in pyproject.toml
cd spatstat-interface
# poetry shell  # to create/activate local .venv (see poetry.toml)
poetry install
# poetry install --with dev
# poetry install --with dev --extras "notebook"

Editable install with pip

Consider using pip>=21.3.1, when installing packages defined by a pyproject.toml file.

cd spatstat-interface
# activate your virtual environment and run
pip install --editable .
# pip install --editable ".[notebook]" to install notebook dependencies

See also the pip install optional commands.

Documentation

Main resources

Notes about spatstat

The spatstat package has recently been split into multiple sub-packages and extensions. Warning: potential new splits may break your code!

Using spatstat-interface, sub-packages and extensions are accessible in the following way

from spatstat_interface.interface import SpatstatInterface

spatstat = SpatstatInterface()
# spatstat.spatstat is None
# spatstat.model is None
# spatstat.explore is None
# spatstat.geom is None

# load/import sub-packages or extensions
spatstat.import_package("model", "explore", "geom", update=True)
spatstat.model
spatstat.explore
spatstat.geom

Calling functions

Calling function.variant

To call the R function.variant

# R code pcf.ppp
spatstat.explore::pcf.ppp(X)

Replace . by _ to call function_variant in Python

# Python code pcf_ppp
spatstat.explore.pcf_ppp(X)

Keyword arguments

Consider using Python dictionaries to pass keyword arguments. Below are a few examples.

  • dot keywords, for example passing var.approx keyword argument won't work in Python

    # R code
    spatstat.explore::pcf.ppp(X, kernel="epanechnikov", var.approx=False)
    
    # Python code
    params = {"kernel": "epanechnikov", "var.approx": False}
    spatstat.explore.pcf_ppp(X, **params)
    
  • reserved keywords, for example lambda is a reserved Python keyword; it can't be used as a keyword argument

    # R code
    spatstat.model::dppGauss(lambda=rho, alpha=alpha, d=d)
    
    # Python code
    params = {"lambda": rho, "alpha": alpha, "d": d}
    spatstat.model.dppGauss(**params)
    

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

spatstat_interface-1.0.1.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

spatstat_interface-1.0.1-py3-none-any.whl (6.2 kB view details)

Uploaded Python 3

File details

Details for the file spatstat_interface-1.0.1.tar.gz.

File metadata

  • Download URL: spatstat_interface-1.0.1.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.3.1 CPython/3.8.5 Darwin/20.6.0

File hashes

Hashes for spatstat_interface-1.0.1.tar.gz
Algorithm Hash digest
SHA256 b89374c45a15829a5a9296c9a781ba339fb1cdbd02781b7a576daf715429b141
MD5 5a12c5797568b3e887fea536734e49c5
BLAKE2b-256 0f19b44fe4e9502e465b39c4d24db16d396d6a31cee242c4ec8d52b75edb5d2a

See more details on using hashes here.

File details

Details for the file spatstat_interface-1.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for spatstat_interface-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 bd56a688ba191ea3937ea7976aa20ab29edf1752d62cb40a0588bf70845f15fa
MD5 e28a61615fea8eb3b39b772f839e3337
BLAKE2b-256 bf98034d2646d7860a74bb4649e40c0313c06488837f28282d6285ae6973b4ba

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