Skip to main content

Python API to Pathling

Project description

Python API for Pathling

This is the Python API for Pathling. It currently supports encoding of FHIR JSON bundles and NDJSON into Apache Spark dataframes.

Installation

Prerequisites:

  • Python 3.8+ with pip
  • PySpark 3.1+

To install, run this command:

pip install pathling  

Usage

The code below shows an example of using the Pathling API to encode Patient resources from FHIR JSON bundles:

from pyspark.sql import SparkSession
from pathling.r4 import bundles
from pathling.etc import find_jar

spark = SparkSession.builder \
    .appName('pathling-test') \
    .master('local[*]') \
    .config('spark.jars', find_jar()) \
    .getOrCreate()
        
json_bundles = bundles.load_from_directory(spark, 'examples/data/bundles/')
patients = bundles.extract_entry(spark, json_bundles, 'Patient')
patients.show()

More usage examples can be found in the examples directory.

Development setup

Create an isolated python environment with Miniconda, e.g:

conda create -n pathling-dev python=3.8
conda activate pathling-dev

Prerequisites:

  • maven (Ubuntu 20.04: apt install maven)
  • java (Ubuntu 20.04: apt install default-jdk)
  • make (Ubuntu 20.04: apt install make)

To run the tests and install the package, run this command from the project root:

mvn install -pl lib/python -am

Pathling is copyright © 2018-2022, Commonwealth Scientific and Industrial Research Organisation (CSIRO) ABN 41 687 119 230. Licensed under the CSIRO Open Source Software Licence Agreement.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

pathling-5.0.2.dev1.tar.gz (19.6 MB view details)

Uploaded Source

Built Distribution

pathling-5.0.2.dev1-py2.py3-none-any.whl (19.6 MB view details)

Uploaded Python 2Python 3

File details

Details for the file pathling-5.0.2.dev1.tar.gz.

File metadata

  • Download URL: pathling-5.0.2.dev1.tar.gz
  • Upload date:
  • Size: 19.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.8.13

File hashes

Hashes for pathling-5.0.2.dev1.tar.gz
Algorithm Hash digest
SHA256 e21e384913fc506cb3515d4e9903a85653a27a56bbf282cab4acd6845ee9a824
MD5 5355fba16c15a7539f9aa8efd0ca5fdb
BLAKE2b-256 079dd965192ca3466521f81bde8f2295b87ab6b7f61184fe9bac5ba1a0357383

See more details on using hashes here.

File details

Details for the file pathling-5.0.2.dev1-py2.py3-none-any.whl.

File metadata

  • Download URL: pathling-5.0.2.dev1-py2.py3-none-any.whl
  • Upload date:
  • Size: 19.6 MB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.8.13

File hashes

Hashes for pathling-5.0.2.dev1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 134e11f74baf682f0c450672616f2de2fd307779453ae0cbc17fd60cb9650d33
MD5 7b9e9b27a8e3005f1ee8c9cfeb717909
BLAKE2b-256 12ae955d66af4450bc9a3623e25c5c7baff58f7116223e827d39fc20df40a555

See more details on using hashes here.

Supported by

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