Skip to main content

README.md

The Planetary Data Reader (pdr)

This tool provides a single command---read(‘/path/to/file’)---for ingesting all common planetary data types. It reads almost all "primary observational data" products currently archived in the PDS (under PDS3 or PDS4), and the fraction of products it does not read is continuously shrinking. Currently-supported datasets are listed here.

If the software fails while attempting to read from datasets that we have listed as supported, please submit an issue with a link to the file and information about the error (if applicable). There might also be datasets that work but are not listed. We would like to hear about those too. If a dataset is not yet supported that you would like us to consider prioritizing, please fill out this request form.

Attribution

If you use pdr in your work, please cite us using our JOSS Paper: DOI. A BibTex style citation is available in CITATION.cff.

Installation

pdr is now on conda and pip. We recommend (and only officially support) installation into a conda environment. You can do this like so:

conda create --name pdrenv
conda activate pdrenv
conda install -c conda-forge pdr

The minimum supported version of Python is 3.9.

Using the conda install will install some optional dependencies in the environment.yml file for pdr including: astropy and pillow. If you'd prefer to forego those optional dependencies, please use minimal_environment.yml in your installation. This is not supported through a direct conda install as described above and will require additional steps. Optional dependencies and the added functionality they support are listed below:

  • pvl: allows Data.load("LABEL", as_pvl=True), which will load PDS3 labels as pvl objects rather than plain text
  • astropy: adds support for FITS files
  • jupyter: allows usage of the Example Jupyter Notebook (and other jupyter notebooks you create)
  • pillow: adds support for reading a variety of 'desktop' image formats (TIFF, JPEG, etc.) and for browse image rendering
  • Levenshtein: allows use of metaget_fuzzy, a fuzzy-matching metadata parsing function

For pip users, no optional dependencies will be packaged with pdr. The extras tags are:

  • pvl: installs pvl
  • fits: installs astropy
  • notebooks: installs jupyter
  • pillow: installs pillow
  • fuzzy: installs Levenshtein

Example syntax for using pip to install syntax with astropy and pillow optional dependencies:

pip install pdr[fits, pillow]

NOTE: pdr is not currently compatible with python 3.13 when installed with pip, it can be used with python 3.13 through conda

Usage

You can check out our example Notebook on a JupyterLite server for a quick interactive demo of functionality: JupyterLite

Additional information on usage including examples, output data types, notes and caveats, tests, etc. can now be accessed in our documentation on readthedocs at: https://pdr.readthedocs.io Documentation Status

Contributing

Thank you for wanting to contribute to pdr and improving efforts to make planetary science data accessible. Please review our code of conduct before contributing. Contributor Covenant

If you have found a bug, a dataset that we claim to support that's not opening properly, or you have a feature request, please file an issue. We will also review pull requests, but would probably prefer you start the conversation with us first, so we can expect your contributions and make sure they will be within scope.

If you need general support you can find us on OpenPlanetary Slack (available to OpenPlanetary members) or feel free to email the team.


This work is supported by NASA grant No. 80NSSC21K0885.

Release files for pdr 1.4.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pdr 1.4.4
File Size Uploaded
pdr-1.4.4.tar.gz 13.4 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for pdr 1.4.4
File Interpreter ABI Platform
pdr-1.4.4-py3-none-any.whl Python 3 none any Details

Total release size: 26.8 MB

Release files / pdr-1.4.4.tar.gz

Download URL pdr-1.4.4.tar.gz
Size 13.4 MB
Tags Source
SHA-256 checksum
How to use checksums
4bb37d34c5d9da8ce99772ea806966a2bb04491de3cf25256cb295e2ac21c532
BLAKE2b-256 checksum
How to use checksums
a7d74e8996e2750cf73b1b287eb5c35b35d83954b5e9459be4636f21bb758607
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.14

Release files / pdr-1.4.4-py3-none-any.whl

Download URL pdr-1.4.4-py3-none-any.whl
Size 13.4 MB
Tags Python 3
SHA-256 checksum
How to use checksums
4eb105d4bf78b57ec7869db4facc096ec5fb4fc06bc23df32504f5d0fa29eaba
BLAKE2b-256 checksum
How to use checksums
3423d2d1ef49cde1c68c32d797d543477a4d75f29a18fdaa120dcc12d3dff1bc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

1.4.4 This release

2 release files

1.4.3

2 release files

1.4.2

2 release files

1.4.1

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.3

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.7.5

2 release files

0.7.4

2 release files

0.7.3

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page