# EIA Band Plot & Time Series Forecasting
This package provides two primary utilities:
* **`five_year_plot`** – Generate interactive 5‑year band plots using
Plotly. These plots mirror the charts used by the U.S. Energy
Information Administration (EIA) to contextualize recent values
against the range, minimum, maximum and average of the last five
years. Multiple numeric columns within a DataFrame can be plotted
simultaneously as separate subplots.
* **`ml_forecast`** – Train individual AutoGluon time series models
for each numeric column in a DataFrame and forecast future values.
The function returns a DataFrame with point forecasts and, if
requested, prediction intervals. Each series is trained
independently using the specified presets (default: `best_quality`).
## Installation
Install the package with:
```bash
pip install analysis3054
```
To enable the optional machine‑learning forecasting features, also
install the AutoGluon time series dependency:
```bash
pip install analysis3054[ml]
```
## Usage
### Five‑Year Band Plot
```python
import pandas as pd
from analysis3054 import five_year_plot
# Example DataFrame with a 'date' column and one or more numeric columns
df = pd.read_csv("my_timeseries_data.csv")
# Create the plot
fig = five_year_plot(date='date', df=df, prior_year_lines=1)
fig.show()
```
### Machine Learning Forecasting
```python
import pandas as pd
from analysis3054 import ml_forecast
df = pd.read_csv("my_timeseries_data.csv")
# Forecast the next 12 periods for each numeric column
result = ml_forecast(date='date', df=df, periods=12)
# Access point forecasts
forecasts = result.forecasts
# Access confidence intervals (if requested)
conf_ints = result.conf_intervals
```
See the docstrings of each function for detailed parameter descriptions.
## User Guide
For a complete overview of all available functions, advanced
forecasting methods, statistical analyses and plotting utilities,
consult the **USER_GUIDE.md** file included with the package. It
provides step‑by‑step examples, explains optional parameters such as
confidence interval computation and plotting, and offers best
practices for combining models and interpreting results.
Raw data
{
"_id": null,
"home_page": null,
"name": "analysis3054",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "time-series, forecasting, power-trading, commodity, energy, analytics",
"author": null,
"author_email": "secret <john23114693@gmial.com>",
"download_url": "https://files.pythonhosted.org/packages/57/4d/d0f1e786e3e1e6f0e8a7f4f6efd479601e199527bad76a3cd58fb1d4feab/analysis3054-0.1.0.tar.gz",
"platform": null,
"description": "# EIA Band Plot & Time Series Forecasting\n\nThis package provides two primary utilities:\n\n* **`five_year_plot`** \u2013 Generate interactive 5\u2011year band plots using\n Plotly. These plots mirror the charts used by the U.S. Energy\n Information Administration (EIA) to contextualize recent values\n against the range, minimum, maximum and average of the last five\n years. Multiple numeric columns within a DataFrame can be plotted\n simultaneously as separate subplots.\n\n* **`ml_forecast`** \u2013 Train individual AutoGluon time series models\n for each numeric column in a DataFrame and forecast future values.\n The function returns a DataFrame with point forecasts and, if\n requested, prediction intervals. Each series is trained\n independently using the specified presets (default: `best_quality`).\n\n## Installation\n\nInstall the package with:\n\n\n```bash\npip install analysis3054\n```\n\nTo enable the optional machine\u2011learning forecasting features, also\ninstall the AutoGluon time series dependency:\n\n```bash\npip install analysis3054[ml]\n```\n\n## Usage\n\n### Five\u2011Year Band Plot\n\n```python\nimport pandas as pd\nfrom analysis3054 import five_year_plot\n\n# Example DataFrame with a 'date' column and one or more numeric columns\ndf = pd.read_csv(\"my_timeseries_data.csv\")\n\n# Create the plot\nfig = five_year_plot(date='date', df=df, prior_year_lines=1)\nfig.show()\n```\n\n### Machine Learning Forecasting\n\n```python\nimport pandas as pd\nfrom analysis3054 import ml_forecast\n\ndf = pd.read_csv(\"my_timeseries_data.csv\")\n\n# Forecast the next 12 periods for each numeric column\nresult = ml_forecast(date='date', df=df, periods=12)\n\n# Access point forecasts\nforecasts = result.forecasts\n\n# Access confidence intervals (if requested)\nconf_ints = result.conf_intervals\n```\n\nSee the docstrings of each function for detailed parameter descriptions.\n\n## User Guide\n\nFor a complete overview of all available functions, advanced\nforecasting methods, statistical analyses and plotting utilities,\nconsult the **USER_GUIDE.md** file included with the package. It\nprovides step\u2011by\u2011step examples, explains optional parameters such as\nconfidence interval computation and plotting, and offers best\npractices for combining models and interpreting results.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Advanced time-series analytics and forecasting toolkit for commodity / power trading (5-year bands, ML, regime switching, hierarchical utilities).",
"version": "0.1.0",
"project_urls": {
"Homepage": "https://pypi.org/project/analysis3054/",
"Repository": "https://github.com/yourname/analysis3054"
},
"split_keywords": [
"time-series",
" forecasting",
" power-trading",
" commodity",
" energy",
" analytics"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "1c3c1e1a1a6a3967664ddc8e5348591a895389db83b2cbd23b2640919f7fcc9d",
"md5": "d867efff3ac7ca8e2765a121f4fd49d3",
"sha256": "45ffc9d7aa6e4bcc4fae1839baba44b91803194192ec487be95d386cc9822131"
},
"downloads": -1,
"filename": "analysis3054-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d867efff3ac7ca8e2765a121f4fd49d3",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 85943,
"upload_time": "2025-11-05T04:38:50",
"upload_time_iso_8601": "2025-11-05T04:38:50.639924Z",
"url": "https://files.pythonhosted.org/packages/1c/3c/1e1a1a6a3967664ddc8e5348591a895389db83b2cbd23b2640919f7fcc9d/analysis3054-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "574dd0f1e786e3e1e6f0e8a7f4f6efd479601e199527bad76a3cd58fb1d4feab",
"md5": "c30e30707acab0fb2d201bbd55db44d0",
"sha256": "d2be01cfddd2b9b948467590f10640054b1602d7c45397a310d44ba0c3cbeb7e"
},
"downloads": -1,
"filename": "analysis3054-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "c30e30707acab0fb2d201bbd55db44d0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 77982,
"upload_time": "2025-11-05T04:38:52",
"upload_time_iso_8601": "2025-11-05T04:38:52.163694Z",
"url": "https://files.pythonhosted.org/packages/57/4d/d0f1e786e3e1e6f0e8a7f4f6efd479601e199527bad76a3cd58fb1d4feab/analysis3054-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-11-05 04:38:52",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "yourname",
"github_project": "analysis3054",
"github_not_found": true,
"lcname": "analysis3054"
}