• Stars
    star
    111
  • Rank 314,510 (Top 7 %)
  • Language
    Jupyter Notebook
  • License
    Apache License 2.0
  • Created over 8 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Trumania is a scenario-based random dataset generator library in python 3

Trumania

Documentation and tutorial

Trumania is a scenario-based random dataset generator library in python 3.

A detailed step-by-step tutorial has is available on Datacamp.

The Trumania github page also contains a detailed documentation of each of the concepts as well as a step-by-step explanation of 4 example scenarios. Those scenarios, and more, are present in the examples/ folder in this repository.

The code pydoc documentation is available here.

You can also join the Trumania slack channel: trumania.slack.com

How to install

Trumania is not packaged in any special way, the way it is used at the moment is simply to clone the code and install the required dependencies. This section describes how to do that.

Pre-requisites:

  • If you installed python 3 with homebrew, then the executable is called python3 and pip is called pip3. See homebrew python documentation for details
  • If you installed python 3 with Conda, make sure you understand how environments work since they might end up conflicting with pipenv environments. See this ticket for a discussion
  • In anycase, in order to specify the exact path of the python to be used, you can always specify --python /path/to/python among the pipenv arguments.

That being said, start by installing pipenv if necessary:

# this could be called "pip", depending on the environment, and must be linked to python 3
pip3 install --user pipenv

then install all python dependencies for this project:

pipenv install --three --python /Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6

The steps below mention to prefix the commands with pipenv run whenever necessary in order to have access to those python dependencies. Alternatively, you can enter the corresponding virtualenv once with pipenv shell, in which case that prefix is no longer necessary. See https://docs.pipenv.org for more details about how to use pipenv to handle python dependencies.

Where and how to create a scenario

To create a scenario, simply create another python project that depends on trumania:

mkdir -p /path/to/your/project
cd /path/to/your/project

# make sure /path/to/trumania/ is the absolute path where trumania is stored
pipenv install -e /path/to/trumania/

You can then create your scenario in python, let's call it burbanks_and_friends_talking.py. In order to execute it, simply launch it from pipenv:

pipenv run python burbanks_and_friends_talking.py  

Contributing

This section provides a few pointers on how to handle the trumania codebase.

Running Trumania unit tests locally

# make sure you are not inside another pipenv shell when running this
pipenv run py.test -s -v

Python linting

Run pipenv run flake8. If nothing is returned, the correct styling has been applied.