Skip to main content

Scans a directory for IMRT QA results

Project description

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’s 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

Project details


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.2.7.tar.gz (4.1 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.2.7-py3-none-any.whl (4.2 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: IQDMPDF-0.2.7.tar.gz
  • Upload date:
  • Size: 4.1 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.2.7.tar.gz
Algorithm Hash digest
SHA256 f22e1fca416817502cc277b54dd6d01342ba250e16e46d89f4b6cea44f9d84aa
MD5 6b9c585ee05baf9362cad98692ec78b1
BLAKE2b-256 750d5c520a9c7b262fd861b2775485dcf00ccdee91a9ddc5a31cdfacb2695d43

See more details on using hashes here.

File details

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

File metadata

  • Download URL: IQDMPDF-0.2.7-py3-none-any.whl
  • Upload date:
  • Size: 4.2 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.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 c8c4274d4563d30425c6136030c53ada697d1d813e9e269d7792dc3267becc08
MD5 51c8cf4286e77cc98c4a32f60f1fb85c
BLAKE2b-256 e04ccb53af4e12e65bc9cfbd2ce94e421242398059366c2e76fde0559082c837

See more details on using hashes here.

Supported by

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