EEmeter: tools for calculating metered energy savings
=====================================================
.. image:: https://travis-ci.org/openeemeter/eemeter.svg?branch=master
:target: https://travis-ci.org/openeemeter/eemeter
:alt: Build Status
.. image:: https://img.shields.io/github/license/openeemeter/eemeter.svg
:target: https://github.com/openeemeter/eemeter
:alt: License
.. image:: https://readthedocs.org/projects/eemeter/badge/?version=master
:target: https://eemeter.readthedocs.io/?badge=master
:alt: Documentation Status
.. image:: https://img.shields.io/pypi/v/eemeter.svg
:target: https://pypi.python.org/pypi/eemeter
:alt: PyPI Version
.. image:: https://codecov.io/gh/openeemeter/eemeter/branch/master/graph/badge.svg
:target: https://codecov.io/gh/openeemeter/eemeter
:alt: Code Coverage Status
.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
:target: https://github.com/ambv/black
:alt: Code Style
---------------
**EEmeter** — an open source python library for creating standardized models for
predicting energy usage. These models are often used to calculate energy savings
post demand side intervention (such as energy efficiency projects or demand
response events).
Background - why use the EEMeter library
----------------------------------------
OpenEEmeter, as implemented in the eemeter package and sibling
`eeweather package <http://eeweather.openee.io>`_ builds upon the foundation of the
`CalTRACK Methods <https://caltrack.org/>`_ to provide free, open-source modeling tools
to anyone seeking to model energy building usage. Eemeter models have been developed to
meet or exceed the predictive capability of the CalTRACK models. These models adhere to
a statistical approach, as opposed to an engineering approach, so that these models
can be efficiently run on millions of meters at a time, while still providing
accurate predictions.
Using default settings in eemeter will provide accurate and stable model predictions
suitable for savings measurements from demand side interventions. Settings can be
modified for research and development purposes, although the outputs of such models
may no longer be an officially recognized measurement as these models have been
verified by the OpenEEmeter Working Group.
.. note::
Please keep in mind that use of the OpenEEmeter is neither necessary nor
sufficient for compliance with the CalTRACK method specification. For example,
while the CalTRACK methods set specific hard limits for the purpose of
standardization and consistency, the EEmeter library can be configured to edit
or entirely ignore those limits. This is becuase the emeter package is used not
only for compliance with, but also for *development of* the CalTRACK methods.
Please also keep in mind that the EEmeter assumes that certain data cleaning
tasks specified in the CalTRACK methods have occurred prior to usage with the
eemeter. The package proactively exposes warnings to point out issues of this
nature where possible.
Installation
------------
EEmeter is a python package and can be installed with pip.
::
$ pip install eemeter
Features
--------
- Models:
- Energy Efficiency Daily Model
- Energy Efficiency Billing (Monthly) Model
- Energy Efficiency Hourly Model
- Demand Response Hourly Model
- Flexible sources of temperature data. See `EEweather <https://eeweather.openee.io>`_.
- Data sufficiency checking
- Model serialization
- First-class warnings reporting
- Pandas dataframe support
- Visualization tools
Documentation
-------------
Documenation for this library can be found `here <https://openeemeter.github.io/eemeter/>`_.
Additionally, within the repository, the scripts directory contains Jupyter Notebooks, which
function as interactive examples.
Roadmap for 2024 development
----------------------------
The OpenEEmeter project growth goals for the year fall into two categories:
1. Community goals - we want help our community thrive and continue to grow.
2. Technical goals - we want to keep building the library in new ways that make it
as easy as possible to use.
Community goals
---------------
1. Develop project documentation and tutorials
A number of users have expressed how hard it is to get started when tutorials are
out of date. We will dedicate time and energy this year to help create high quality
tutorials that build upon the API documentation and existing tutorials.
2. Make it easier to contribute
As our user base grows, the need and desire for users to contribute back to the library
also grows, and we want to make this as seamless as possible. This means writing and
maintaining contribution guides, and creating checklists to guide users through the
process.
Technical goals
~~~~~~~~~~~~~~~
1. Implement new OpenEEmeter models
The OpenEEmeter Working Group continues to improve the underlying models in
OpenEEmeter. We seek to continue to implement these models in a safe, tested manner
so that these models may continue to be used within engineering pipelines effectively.
2. Weather normal and unusual scenarios
The EEweather package, which supports the OpenEEmeter, comes packaged with publicly
available weather normal scenarios, but one feature that could help make that easier
would be to package methods for creating custom weather year scenarios.
3. Greater weather coverage
The weather station coverage in the EEweather package includes full coverage of US and
Australia, but with some technical work, it could be expanded to include greater, or
even worldwide coverage.
License
-------
This project is licensed under [Apache 2.0](LICENSE).
Other resources
---------------
- `CONTRIBUTING <CONTRIBUTING.md>`_: how to contribute to the project.
- `MAINTAINERS <MAINTAINERS.md>`_: an ordered list of project maintainers.
- `CHARTER <CHARTER.md>`_: open source project charter.
- `CODE_OF_CONDUCT <CODE_OF_CONDUCT.md>`_: Code of conduct for contributors.
Raw data
{
"_id": null,
"home_page": "http://github.com/openeemeter/eemeter",
"name": "eemeter",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": null,
"author": "Phil Ngo",
"author_email": "admin@openee.io",
"download_url": "https://files.pythonhosted.org/packages/01/e1/3bdc03b545e9295358e2fff96289809c2f08b195ee514be0ab7c9d8c9fe7/eemeter-4.1.1.tar.gz",
"platform": null,
"description": "\nEEmeter: tools for calculating metered energy savings\n=====================================================\n\n.. image:: https://travis-ci.org/openeemeter/eemeter.svg?branch=master\n :target: https://travis-ci.org/openeemeter/eemeter\n :alt: Build Status\n\n.. image:: https://img.shields.io/github/license/openeemeter/eemeter.svg\n :target: https://github.com/openeemeter/eemeter\n :alt: License\n\n.. image:: https://readthedocs.org/projects/eemeter/badge/?version=master\n :target: https://eemeter.readthedocs.io/?badge=master\n :alt: Documentation Status\n\n.. image:: https://img.shields.io/pypi/v/eemeter.svg\n :target: https://pypi.python.org/pypi/eemeter\n :alt: PyPI Version\n\n.. image:: https://codecov.io/gh/openeemeter/eemeter/branch/master/graph/badge.svg\n :target: https://codecov.io/gh/openeemeter/eemeter\n :alt: Code Coverage Status\n\n.. image:: https://img.shields.io/badge/code%20style-black-000000.svg\n :target: https://github.com/ambv/black\n :alt: Code Style\n\n---------------\n\n**EEmeter** \u2014 an open source python library for creating standardized models for \npredicting energy usage. These models are often used to calculate energy savings \npost demand side intervention (such as energy efficiency projects or demand \nresponse events).\n\nBackground - why use the EEMeter library\n----------------------------------------\n\nOpenEEmeter, as implemented in the eemeter package and sibling \n`eeweather package <http://eeweather.openee.io>`_ builds upon the foundation of the \n`CalTRACK Methods <https://caltrack.org/>`_ to provide free, open-source modeling tools\nto anyone seeking to model energy building usage. Eemeter models have been developed to\nmeet or exceed the predictive capability of the CalTRACK models. These models adhere to \na statistical approach, as opposed to an engineering approach, so that these models \ncan be efficiently run on millions of meters at a time, while still providing \naccurate predictions. \n\nUsing default settings in eemeter will provide accurate and stable model predictions \nsuitable for savings measurements from demand side interventions. Settings can be \nmodified for research and development purposes, although the outputs of such models \nmay no longer be an officially recognized measurement as these models have been\nverified by the OpenEEmeter Working Group.\n\n.. note::\n\n Please keep in mind that use of the OpenEEmeter is neither necessary nor\n sufficient for compliance with the CalTRACK method specification. For example,\n while the CalTRACK methods set specific hard limits for the purpose of\n standardization and consistency, the EEmeter library can be configured to edit\n or entirely ignore those limits. This is becuase the emeter package is used not\n only for compliance with, but also for *development of* the CalTRACK methods.\n\n Please also keep in mind that the EEmeter assumes that certain data cleaning\n tasks specified in the CalTRACK methods have occurred prior to usage with the\n eemeter. The package proactively exposes warnings to point out issues of this\n nature where possible.\n\nInstallation\n------------\n\nEEmeter is a python package and can be installed with pip.\n\n::\n\n $ pip install eemeter\n\nFeatures\n--------\n\n- Models:\n\n - Energy Efficiency Daily Model\n - Energy Efficiency Billing (Monthly) Model\n - Energy Efficiency Hourly Model\n - Demand Response Hourly Model\n\n- Flexible sources of temperature data. See `EEweather <https://eeweather.openee.io>`_.\n- Data sufficiency checking\n- Model serialization\n- First-class warnings reporting\n- Pandas dataframe support\n- Visualization tools\n\nDocumentation\n-------------\n\nDocumenation for this library can be found `here <https://openeemeter.github.io/eemeter/>`_.\nAdditionally, within the repository, the scripts directory contains Jupyter Notebooks, which\nfunction as interactive examples.\n\n\nRoadmap for 2024 development\n----------------------------\n\nThe OpenEEmeter project growth goals for the year fall into two categories:\n\n1. Community goals - we want help our community thrive and continue to grow.\n2. Technical goals - we want to keep building the library in new ways that make it\n as easy as possible to use.\n\nCommunity goals\n---------------\n\n1. Develop project documentation and tutorials\n\nA number of users have expressed how hard it is to get started when tutorials are\nout of date. We will dedicate time and energy this year to help create high quality\ntutorials that build upon the API documentation and existing tutorials.\n\n2. Make it easier to contribute\n\nAs our user base grows, the need and desire for users to contribute back to the library\nalso grows, and we want to make this as seamless as possible. This means writing and\nmaintaining contribution guides, and creating checklists to guide users through the\nprocess.\n\n\nTechnical goals\n~~~~~~~~~~~~~~~\n\n1. Implement new OpenEEmeter models\n\nThe OpenEEmeter Working Group continues to improve the underlying models in \nOpenEEmeter. We seek to continue to implement these models in a safe, tested manner\nso that these models may continue to be used within engineering pipelines effectively.\n\n2. Weather normal and unusual scenarios\n\nThe EEweather package, which supports the OpenEEmeter, comes packaged with publicly\navailable weather normal scenarios, but one feature that could help make that easier\nwould be to package methods for creating custom weather year scenarios.\n\n3. Greater weather coverage\n\nThe weather station coverage in the EEweather package includes full coverage of US and\nAustralia, but with some technical work, it could be expanded to include greater, or\neven worldwide coverage.\n\nLicense\n-------\n\nThis project is licensed under [Apache 2.0](LICENSE).\n\nOther resources\n---------------\n\n- `CONTRIBUTING <CONTRIBUTING.md>`_: how to contribute to the project.\n- `MAINTAINERS <MAINTAINERS.md>`_: an ordered list of project maintainers.\n- `CHARTER <CHARTER.md>`_: open source project charter.\n- `CODE_OF_CONDUCT <CODE_OF_CONDUCT.md>`_: Code of conduct for contributors.\n",
"bugtrack_url": null,
"license": "Apache 2.0",
"summary": "Open Energy Efficiency Meter",
"version": "4.1.1",
"project_urls": {
"Homepage": "http://github.com/openeemeter/eemeter"
},
"split_keywords": [],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "1a63f67fa9cfcc0e139e24ada72deb9841d5d559134b302b59309d500ca23cb6",
"md5": "0eab28ae5966da8d48d995e40f0d47a6",
"sha256": "2b9002d80ba11257764785f6f0e1f29a4f17f897e1cdffa4ac49429e7c2e3578"
},
"downloads": -1,
"filename": "eemeter-4.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "0eab28ae5966da8d48d995e40f0d47a6",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 1467353,
"upload_time": "2025-02-11T19:43:56",
"upload_time_iso_8601": "2025-02-11T19:43:56.423710Z",
"url": "https://files.pythonhosted.org/packages/1a/63/f67fa9cfcc0e139e24ada72deb9841d5d559134b302b59309d500ca23cb6/eemeter-4.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "01e13bdc03b545e9295358e2fff96289809c2f08b195ee514be0ab7c9d8c9fe7",
"md5": "3fbdfff31cd7cac486b6916c070584f9",
"sha256": "c9c626b2e77072981522c95c7c314dceac476e8848249efe83ac019932782fda"
},
"downloads": -1,
"filename": "eemeter-4.1.1.tar.gz",
"has_sig": false,
"md5_digest": "3fbdfff31cd7cac486b6916c070584f9",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 1453267,
"upload_time": "2025-02-11T19:43:59",
"upload_time_iso_8601": "2025-02-11T19:43:59.026552Z",
"url": "https://files.pythonhosted.org/packages/01/e1/3bdc03b545e9295358e2fff96289809c2f08b195ee514be0ab7c9d8c9fe7/eemeter-4.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-02-11 19:43:59",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "openeemeter",
"github_project": "eemeter",
"travis_ci": true,
"coveralls": true,
"github_actions": true,
"tox": true,
"lcname": "eemeter"
}