Package to create out of a single load profile a profile for a whole district using the diversity factor
Project description
Time Series Scaling Module (TSSM)
TSSM is a python package for the scaling of time series.
Warning
This package is under heavy development!
Getting started
Install tssm
Install tssm directly from PyPi as follows. It is recommended to set up a fresh Conda environment before using this package by following these steps:
- Install Miniconda or update your conda installation with
conda update conda
- Create a new environment with
conda create -n <environmentName> python=<pythonVersion>
. The python version to be specified should be greater than python 3.8. - Activate the environment with
source activate <environmentName>
on Linux/MacOS oractivate <environmentName>
on Windows - Clone tssm with
git clone https://git.fh-aachen.de/tb5152e/tssm.git
- Install tssm with
pip install -e <path_to_tssm_package>
- Verify your tssm package installtion by running the configured automated tests. Go to your tssm top-level directory and type
pytest
Or you can also directly install tssm package from PyPi with the following command
pip install tssm
Usage
example usages can be found in the examples' folder.
Basic workflow
A small example how tssm can be used is described as follows:
# import module
from tssm import TimeSeriesScalingModule as tssm
# initialize class with a number of buildings of 202 with a simultaneity factor of 0.786
df_test = tssm(number_of_buildings=202, simultaneity_factor=0.786)
# read profile from data.csv file and use the Electricity and Date column
df_test.values.read_profile_from_csv_with_date(path="./data.csv", column_of_load="Electricity", column_of_date="Date")
# calculate linear scaled values with a daily (period=1) simultaneity factor and average value
daily_scaled_values = df_test.calculate_linear(period=1)
Examples
A first example shows the linear approach. It scales the time series between the scaled time series and an average.
A second example shows the scaling approach. It scales the time series between the scaled time series and a scaling time series.
A third example shows the normal distribution approach. It scales the time series by applying a normal distribution to every time step.
A fourth example shows the different ways to import the data.
A fifth example shows the speed of the different approaches.
License
The module is licensed under BSD 3-Clause License.
Further, License information can be found here.
Reference
Acknowledgements
Content
The documentation of the tssm code can be found here.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.