Skip to content

sust-cs-uob/eam-data-tools

Repository files navigation

Overview

docs Documentation Status
tests
Travis-CI Build Status AppVeyor Build Status
Coverage Status
package
PyPI Package latest release Supported versions Supported implementations

Tool to define random variables in a table. The main purpose is to support the EAM framework.

  • Free software: Apache Software License 2.0

Installation

pip install eam-data-tools

You can also install the in-development version with:

pip install https://github.com/sust-cs-uob/eam-data-tools/archive/master.zip

Documentation

https://eam-data-tools.readthedocs.io/

Usage

# Example Given an excel file with rows similar to the below

variable scenario type ref value param initial_value_proportional_variation unit mean growth variability growth ref date label comment source
a exp 10 0.4 kg -0.20 0.10 01/01/2009 test var 1
b interp {"2010-01-01":1, "2010-03-01":100 , "2010-12-01":110} linear 0.4 kg -0.20 0.10 01/01/2009 test var 1

Write code that references these variables and generates random distributions in pandas dataframes with pint-pandas units.:

repository = ParameterRepository()
TableParameterLoader(filename='./test_v2.xlsx', excel_handler='xlrd').load_into_repo(sheet_name='Sheet1',
                                                                                     repository=repository)
p = repository.get_parameter('a')

settings = {'sample_size': 3, 'times': pd.date_range('2016-01-01', '2017-01-01', freq='MS'),
            'sample_mean_value': False, 'use_time_series': True}
val = p(settings)
series = val.pint.m