Skip to content

bdiptesh/CodeLib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

checks pylint Score Coverage score License


Table of contents

  1. Introduction
    1. Objective
    2. Programming style
    3. Version control
    4. Contribution guidelines
  2. Project documents
    1. Approach
  3. Available modules
    1. Clustering - determines optimal k
    2. GLMNet - classification/regression
    3. k-nearest neighbours - classification/regression
    4. Random forest - classification/timeseries/regression
    5. XGBoost - classification/timeseries/regression
    6. Traveling salesman problem - integer programming/heuristic
    7. Transportation problem - integer programming
    8. Time series
  4. Pull request guidelines
  5. Initial setup
  6. Unit tests
  7. Important links
  8. License

Introduction

Objective

The objective of this repository is to:

  1. Create a code library/toolkit to automate commonly used machine learning techniques/approaches in a modular environment.
  2. Provide best in class approaches developed over a period of time.
  3. Reduce development time for machine learning projects.
  4. Provide a scalable solution for all machine learning projects.

Programming style

It's good practice to follow accepted standards while coding in python:

  1. PEP 8 standards: For code styles.
  2. PEP 257 standards: For docstrings standards.
  3. PEP 484 standards For function annotations standards.

Also, it's a good idea to rate all our python scripts with Pylint. If we score anything less than 8/10, we should consider redesigning the code architecture.

A composite pylint ratings for all the codes are automatically computed when we run the tests and prepended on top of this file.

Version control

We use semantic versionning (SemVer) for version control. You can read about semantic versioning here.

Initial setup

bash install.sh

Requirements

The python requirements can be found at

  1. Requirements

Run unit tests and pylint ratings

To run all unit tests and rate all python scripts, run the following in project directory:

./bin/run_tests.sh

Available options:

-a default, runs both code rating and unit tests.
-u unit tests.
-r code rating.

The pylint ratings for each python script can be found at logs/pylint/


Important links

Guidelines