Skip to content

Application for managing the structure, properties, data, experiments and build of data science projects.

Notifications You must be signed in to change notification settings

john-hawkins/projit

Repository files navigation

Projit

Project Integrator for Decoupled Data Science

Status: Functional Release - Active Feature Development

License: MIT Tests Documentation Status PyPI

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

About

Application for managing the structure, properties, data, experiments and build of data science projects.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published