Skip to main content

build Documentation Status PyPI Python Version lgtm lgtm code quality Codecov Lines of code Repo Size Code style: black

What does it do?

Scans a directory for IMRT QA reports and parses data into a CSV.

Other information

This library is part of the IMRT QA Data Mining (IQDM) project for the AAPM IMRT Working Group (WGIMRT).

Dependencies

Install

Latest PyPI release:

$ pip install iqdmpdf

Install from source:

$ python setup.py install

If you do not have a C++ compiler installed, you might have issues with installing the latest version of pdfminer.six. The following might resolve your issue:

$ pip install pdfminer.six==20200726

Usage

To scan a directory for IMRT QA report files and generate a results .csv file into your current directory:

$ iqdmpdf [init_directory]

As of v0.2.2, multi-threading is enabled. For example, you can enable 4 simultaneous threads with the following:

$ iqdmpdf [init_directory] -n 4

usage: iqdmpdf [-h] [-ie] [-od OUTPUT_DIR] [-of OUTPUT_FILE] [-ver] [-nr]
               [-re] [-n PROCESSES]
               [init_directory]

Command line interface for IQDM-PDF

positional arguments:
  init_directory        Initiate scan here

optional arguments:
  -h, --help            show this help message and exit
  -ie, --ignore-extension
                        Script will check all files, not just ones with .pdf
                        extensions
  -od OUTPUT_DIR, --output-dir OUTPUT_DIR
                        Output stored in local directory by default, specify
                        otherwise here
  -of OUTPUT_FILE, --output-file OUTPUT_FILE
                        Output will be saved as <report_type>_results_<time-
                        stamp>.csv by default. Define this tag to customize
                        file name after <report_type>_
  -ver, --version       Print the IQDM version
  -nr, --no-recursive-search
                        Include this flag to skip sub-directories
  -re, --raise-errors   Allow failed file parsing to halt the program
  -n PROCESSES, --processes PROCESSES
                        Enable multiprocessing, set number of parallel
                        processes

Vendor Compatibility

We plan to support many vendors. If the report is very consistent, a new JSON file in the report_templates is essentially all that is needed. Additional documentation for custom templates can be found here.

Credits

Development Lead

  • Dan Cutright

Contributors

  • Marc Chamberland

  • Aditya Panchal

Test Data

Example IMRT QA reports used for unit testing and design are available here.

  • Dan Cutright, University of Chicago Hospital
    • delta4/UChicago

    • sncpatient/UChicago

  • Marc Chamberland, University of Vermont Health Network
    • sncpatient/UVermontHealthNetwork

  • Serpil Kucuker Dogan, Nortwestern Memorial Hospital
    • sncpatient/Northwestern_Memorial

    • sncpatient2020/Northwestern_Memorial

  • Aditya Panchal, AMITA Health
    • verisoft/AMITA_Health

  • Michael Snyder, Beaumont Health
    • sncpatient/Beaumont

Download files

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

Source Distribution

IQDMPDF-0.3.0.tar.gz (4.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

IQDMPDF-0.3.0-py3-none-any.whl (4.9 MB view details)

Uploaded Python 3

File details

Details for the file IQDMPDF-0.3.0.tar.gz.

File metadata

  • Download URL: IQDMPDF-0.3.0.tar.gz
  • Upload date:
  • Size: 4.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for IQDMPDF-0.3.0.tar.gz
Algorithm Hash digest
SHA256 73d9adc0cc768db5fa5025ba3632d5a5fd1a75e4131450d8502044454bf46577
MD5 03f3eef68440c7e561a9d8b09b632cf8
BLAKE2b-256 f84ece531c18dd462d17667d77d7d77a09419485ace8cd2341d7aeb2f4ca230f

See more details on using hashes here.

File details

Details for the file IQDMPDF-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: IQDMPDF-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 4.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/53.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.7.9

File hashes

Hashes for IQDMPDF-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f8c1ecd16bdd129f9d972d9a6bee0ae92aa63b5d028b9634e725dcf34189537e
MD5 380e57d82e5702297ff12f4137695aa2
BLAKE2b-256 cbf612332797c13245208c0cf5e32e7192eb1a648ad96c3af7a8d071fb39191c

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 files

0.2.9

2 files

0.2.8

2 files

0.2.7

2 files

0.2.6

2 files

0.2.5

2 files

0.2.4.post2

2 files

0.2.4.post1

2 files

0.2.4

2 files

0.2.3

2 files

0.2.2

2 files

0.2.1

2 files

0.2

2 files

Supported by

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