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 import PathlingContext
from pathling.etc import find_jar

spark = SparkSession.builder \
    .appName('pathling-test') \
    .master('local[*]') \
    .config('spark.jars', find_jar()) \
    .getOrCreate()

ptl = PathlingContext.create(spark)
        
json_bundles = spark.read.text('examples/data/bundles/', wholetext=True)

patients_df = ptl.encodeBundle(json_bundles, 'Patient')
patients_df.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

This version

5.1.0

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.1.0.tar.gz (21.6 MB view details)

Uploaded Source

Built Distribution

pathling-5.1.0-py2.py3-none-any.whl (21.6 MB view details)

Uploaded Python 2Python 3

File details

Details for the file pathling-5.1.0.tar.gz.

File metadata

  • Download URL: pathling-5.1.0.tar.gz
  • Upload date:
  • Size: 21.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.8.10

File hashes

Hashes for pathling-5.1.0.tar.gz
Algorithm Hash digest
SHA256 d05b97e9aeb8e9da2e5a9fa89ef0abe0bb5079daae931d5d665a8ca14216e04e
MD5 9c61662dbce38e496300717650ac4459
BLAKE2b-256 762cd142e1335a69cb009289b2682f42e1dbec938b959a056c613004a02c7117

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for pathling-5.1.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 957521c66192f10f72dcf228c67c24f9cdbdc60b335c18aeae36850792571c4c
MD5 e79ecbf5cb77319b3676fb387e1925c3
BLAKE2b-256 9fa7ac0b52d1abf60a12a138fef160e76c9424f576e7605cbe74902883aada5a

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