## The `eensight` tool for measurement and verification of energy efficiency improvements
The `eensight` Python package implements the measurement and verification (M&V) methodology that has been developed by the H2020 project [SENSEI - Smart Energy Services to Improve the Energy Efficiency of the European Building Stock](https://senseih2020.eu/).
The online book *Rethinking Measurement and Verification of Energy Savings* (accessible [here](https://hebes-io.github.io/rethinking/index.html)) explains in detail both the methodology and its implementation.
## Installation
`eensight` can be installed by pip:
```bash
pip install eensight
```
## Usage
### 1. Through the command line
All the functionality in `eensight` is organized around data pipelines. Each pipeline consumes data and other artifacts (such as models) produced by a previous pipeline, and produces new data and artifacts for its successor pipelines.
There are four (4) pipelines in `eensight`. The names of the pipelines and the associations between pipelines and namespaces are summarized below:
| | train | test | apply |
|------------ |---------- |---------- |---------|
| preprocess | ✔ | ✔ | ✔|
| predict | ✔ | ✔ | ✔|
| evaluate | | ✔ | ✔|
| adjust | | | ✔|
The primary way of using `eensight` is through the command line. The first argument is always the name of the pipeline to run, such as:
```bash
eensight run predict --namespace train
```
The command
```bash
eensight run --help
```
prints the documentation for all the options that can be passed to the command line.
### 2. As a library
The pipelines of `eensight` are separate from the methods that implement them, so that the latter can be used directly:
```python
import pandas as pd
from eensight.methods.prediction.baseline import UsagePredictor
from eensight.methods.prediction.activity import estimate_activity
non_occ_features = ["temperature", "dew point temperature"]
activity = estimate_activity(
X,
y,
non_occ_features=non_occ_features,
exog="temperature",
assume_hurdle=False,
)
X_act = pd.concat([X, activity.to_frame("activity")], axis=1)
model = UsagePredictor(skip_calendar=True).fit(X_act, y)
```
Raw data
{
"_id": null,
"home_page": "https://github.com/hebes-io/eensight",
"name": "eensight",
"maintainer": "Sotiris Papadelis",
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": "spapadel@gmail.com",
"keywords": "measurement,verification,pipelines",
"author": "",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/cd/44/f9702664f3f4bc35b4e8c25d92fadb2da09fafb336f1434b81fa974127c0/eensight-1.0.2.tar.gz",
"platform": null,
"description": "## The `eensight` tool for measurement and verification of energy efficiency improvements\r\n\r\nThe `eensight` Python package implements the measurement and verification (M&V) methodology that has been developed by the H2020 project [SENSEI - Smart Energy Services to Improve the Energy Efficiency of the European Building Stock](https://senseih2020.eu/). \r\n\r\nThe online book *Rethinking Measurement and Verification of Energy Savings* (accessible [here](https://hebes-io.github.io/rethinking/index.html)) explains in detail both the methodology and its implementation.\r\n\r\n## Installation\r\n\r\n`eensight` can be installed by pip:\r\n\r\n```bash\r\npip install eensight\r\n```\r\n\r\n## Usage\r\n\r\n### 1. Through the command line\r\n\r\nAll the functionality in `eensight` is organized around data pipelines. Each pipeline consumes data and other artifacts (such as models) produced by a previous pipeline, and produces new data and artifacts for its successor pipelines.\r\n\r\nThere are four (4) pipelines in `eensight`. The names of the pipelines and the associations between pipelines and namespaces are summarized below:\r\n\r\n| \t| train \t| test \t| apply |\r\n|------------\t|----------\t|----------\t|---------|\r\n| preprocess \t| ✔ \t| ✔ \t| ✔|\r\n| predict \t| ✔ \t| ✔\t| ✔|\r\n| evaluate \t| \t| ✔ | ✔|\r\n| adjust \t| \t| | ✔|\r\n\r\nThe primary way of using `eensight` is through the command line. The first argument is always the name of the pipeline to run, such as:\r\n\r\n```bash\r\neensight run predict --namespace train\r\n```\r\nThe command\r\n\r\n```bash\r\neensight run --help\r\n```\r\nprints the documentation for all the options that can be passed to the command line.\r\n\r\n### 2. As a library\r\n\r\nThe pipelines of `eensight` are separate from the methods that implement them, so that the latter can be used directly:\r\n\r\n```python\r\nimport pandas as pd\r\n\r\nfrom eensight.methods.prediction.baseline import UsagePredictor\r\nfrom eensight.methods.prediction.activity import estimate_activity\r\n\r\nnon_occ_features = [\"temperature\", \"dew point temperature\"]\r\n\r\nactivity = estimate_activity(\r\n X, \r\n y, \r\n non_occ_features=non_occ_features, \r\n exog=\"temperature\",\r\n assume_hurdle=False,\r\n\r\n)\r\n\r\nX_act = pd.concat([X, activity.to_frame(\"activity\")], axis=1)\r\nmodel = UsagePredictor(skip_calendar=True).fit(X_act, y)\r\n```\r\n\r\n",
"bugtrack_url": null,
"license": "Apache License, Version 2.0",
"summary": "A library for measurement and verification of energy efficiency projects.",
"version": "1.0.2",
"split_keywords": [
"measurement",
"verification",
"pipelines"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "6b0c76e30a1e585da56df6f1946d95d211af13ddbdcf90dcdddded0e535009a0",
"md5": "8c7fd97f1fd3260acaa51a9f92353fd1",
"sha256": "32b9b77e1a992b36514d1cbe2dd5d64e4a4634409da4990964a173fc24f59239"
},
"downloads": -1,
"filename": "eensight-1.0.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8c7fd97f1fd3260acaa51a9f92353fd1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 62275,
"upload_time": "2023-01-21T17:41:26",
"upload_time_iso_8601": "2023-01-21T17:41:26.674345Z",
"url": "https://files.pythonhosted.org/packages/6b/0c/76e30a1e585da56df6f1946d95d211af13ddbdcf90dcdddded0e535009a0/eensight-1.0.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "cd44f9702664f3f4bc35b4e8c25d92fadb2da09fafb336f1434b81fa974127c0",
"md5": "26a49ddbe651885f4c2bbc8ed5781d60",
"sha256": "a05cf13d73de2ab70608d889ca1e6a73d3dfca019aec9c9f95b1624f2c1a2cbd"
},
"downloads": -1,
"filename": "eensight-1.0.2.tar.gz",
"has_sig": false,
"md5_digest": "26a49ddbe651885f4c2bbc8ed5781d60",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 67028,
"upload_time": "2023-01-21T17:41:29",
"upload_time_iso_8601": "2023-01-21T17:41:29.589801Z",
"url": "https://files.pythonhosted.org/packages/cd/44/f9702664f3f4bc35b4e8c25d92fadb2da09fafb336f1434b81fa974127c0/eensight-1.0.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-01-21 17:41:29",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "hebes-io",
"github_project": "eensight",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "eensight"
}