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.
Metadata
Release files for pathling 5.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pathling-5.1.0.tar.gz | 21.6 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pathling-5.1.0-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details |
Total release size: 43.3 MB
Release files / pathling-5.1.0.tar.gz
| Download URL | pathling-5.1.0.tar.gz |
|---|---|
| Size | 21.6 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d05b97e9aeb8e9da2e5a9fa89ef0abe0bb5079daae931d5d665a8ca14216e04e
|
|
BLAKE2b-256 checksum How to use checksums |
762cd142e1335a69cb009289b2682f42e1dbec938b959a056c613004a02c7117
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.8.10
|
Release files / pathling-5.1.0-py2.py3-none-any.whl
| Download URL | pathling-5.1.0-py2.py3-none-any.whl |
|---|---|
| Size | 21.6 MB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
957521c66192f10f72dcf228c67c24f9cdbdc60b335c18aeae36850792571c4c
|
|
BLAKE2b-256 checksum How to use checksums |
9fa7ac0b52d1abf60a12a138fef160e76c9424f576e7605cbe74902883aada5a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.8.10
|