Projit
Project Integrator for Decoupled Data Science
Status: Beta Functional.
Projit is a utility to help data scientists manage projects that contain multiple experiments and components that need to interact in a de-coupled manner. Use it to define and manage project structure, properties, data, experiments & collaboration.
The goal of this project is to allow data scientists and teams to work on projects in a structured and standardized way. The projit utility allows you to establish a project with a centralised meta-data repository. This meta-data is used by the application and package to facilitate loosely coupled communication between scripts for experiments, to track results and parameters.
For example, projit provides a python library that can be used inside experiments and scripts so references to training, evaluation and test data sets can accessed without passing around and maintaing paths.
In addition the project can be initialised according to a standardized layout so that the diectory structure is familiar to all team members.
This project was inspired by a combination of other projects:
Released and distributed via setuptools/PyPI/pip for Python 3.
Additional details and usage instructions available in the documentation
Notes
Initial implementation is focused allowing the user to initialise a project, and then modify it using a python package that can be called independently in scripts across the project structure. This creates a central authority for updating and retrieving info about data sets and experimental results.
Usage
You can use this application in multiple ways
Use the runner:
./projit-runner.py init "Test Project"
Invoke the directory as a package:
python -m projit init "Test Project"
Or simply install the package and use the command line application directly as shown in the process below:
Installation
Installation from the source tree:
git clone https://github.com/john-hawkins/projit
cd projit
python setup.py install
(or via pip from PyPI):
pip install projit
Now, the projit command is available:
projit init "Test Project"
This will initialise the current directory as a Data Science Project using the default template. Please refer to the documentation for more detail on projit commands.
Output
By adding experiments and results to a projit project you can examine them. Example output in the table below:
Results on [test]
| experiment | MAE | MAPE |
|---|---|---|
| mytest | 11230.46 | 13.46 |
| mytest2 | nan | 15.86 |
Acknowledgements
Python package built using the bootstrap cmdline template by jgehrcke
Metadata
Release files for projit 0.1.13
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| projit-0.1.13.tar.gz | 18.9 kB | Without provenance | Details for projit-0.1.13.tar.gz |
Release files / projit-0.1.13.tar.gz
| Download URL | projit-0.1.13.tar.gz |
|---|---|
| Size | 18.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0a04edd90e5f50e3e4446984eb7b97f77f742748af24b17c68d57b96c7b286ed
|
|
BLAKE2b-256 checksum How to use checksums |
270f23b90b212d770e9b49c1897e72bb9e46fada25b6b70d9cf42731a1b6fc01
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.2 CPython/3.10.8
|
Security for projit 0.1.13
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.