Skip to content

supplybi/supplychainpy

Repository files navigation

Build Status Documentation Status Coverage Status PyPI version

#Supplychainpy

Supplychainpy is a Python library for supply chain analysis, modeling and simulation. Use in conjunction with popular data analysis libraries and excel tools such as xlwings or openpyxl (for Excel spreadsheet applications).

The library is currently in early stages of development, so not ready for use in production. However some fun can be had by passing a csv or text file in the correct format. For quick exploration, the analyse_orders_abcxyz_from_file will output the following inventory analysis:

  • economic order quantities
  • safety stock
  • abc xyz classification
  • demand variability
  • ...

##Quick Install

The easiest way to install supplychainpy is via pip: pip install supplychainpy.

An alternative is to clone the repository and run python setup.py install

##Dependencies

  • NumPy

##Optional Dependencies

  • pandas
  • matplotlib
  • xlwings
  • openpyxl

##Python Version

  • python 3.5

##Quick Guide

  1. Fire up the python interpreter or ipython notebook from the command line.

  2. Format the .csv or .txt.e.g sku id, order1, order2,... orders12, unit cost, lead time,

At the moment the lead-time must match the orders time bucket i.e both should be in days, weeks or months. This will change promptly.

	from xlwings import Workbook, Range
    from supplychainpy.model_inventory import analyse_orders_abcxyz_from_file
    wb = Workbook(r'~/Desktop/test.xlsx'), Range
    abc = analyse_orders_abcxyz_from_file(file_path="data.csv", z_value= 1.28, reorder_cost=5000, file_type="csv")

	for index ,sku in enumerate(abc.orders, 1):
        Range('A'+ str(index)).value = sku.sku_id
        Range('B' + str(index)).value = float(sku.economic_order_qty)
        Range('C' + str(index)).value = float(sku.revenue)
        Range('D' + str(index)).value = sku.abcxyz_classification

or get the whole analysis using:

	from supplychainpy.model_inventory import analyse_orders_abcxyz_from_file
    abc = analyse_orders_abcxyz_from_file(file_path="data.csv", z_value=Decimal(1.28),
                                     reorder_cost=Decimal(5000), file_type="csv")
	for sku in abc.orders:
	    print(sku.orders_summary())

Further examples and explanations will be available in the documentation. Please find below.

Documentation: supplychainpy.readthdocs

Website: supplychainpy.org

Forum: google groups

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages