diff --git a/dist/pytimetk-0.4.0.9000.tar.gz b/dist/pytimetk-0.4.0.9000.tar.gz
deleted file mode 100644
index 26edac4c..00000000
Binary files a/dist/pytimetk-0.4.0.9000.tar.gz and /dev/null differ
diff --git a/dist/pytimetk-0.4.0.9000-py3-none-any.whl b/dist/pytimetk-1.0.0-py3-none-any.whl
similarity index 99%
rename from dist/pytimetk-0.4.0.9000-py3-none-any.whl
rename to dist/pytimetk-1.0.0-py3-none-any.whl
index 7700f5c5..2f6f6d4c 100644
Binary files a/dist/pytimetk-0.4.0.9000-py3-none-any.whl and b/dist/pytimetk-1.0.0-py3-none-any.whl differ
diff --git a/dist/pytimetk-1.0.0.tar.gz b/dist/pytimetk-1.0.0.tar.gz
new file mode 100644
index 00000000..7ae056fb
Binary files /dev/null and b/dist/pytimetk-1.0.0.tar.gz differ
diff --git a/docs/_site/changelog-news.html b/docs/_site/changelog-news.html
index 8e5f000c..0e42db5f 100644
--- a/docs/_site/changelog-news.html
+++ b/docs/_site/changelog-news.html
@@ -332,7 +332,7 @@
On this page
- - pytimetk 0.4.0.9000 (Development Version)
+
- pytimetk 1.0.0
- Pandas and Polars Compatibility:
- Improvements:
@@ -392,8 +392,8 @@ Changelog for Pytimetk
-
-pytimetk 0.4.0.9000 (Development Version)
+
+pytimetk 1.0.0
Pandas and Polars Compatibility:
Upgrading to:
diff --git a/docs/_site/sitemap.xml b/docs/_site/sitemap.xml
index 6e927291..7b04c865 100644
--- a/docs/_site/sitemap.xml
+++ b/docs/_site/sitemap.xml
@@ -2,342 +2,342 @@
https://business-science.github.io/pytimetk/reference/ts_features.html
- 2024-07-18T14:47:16.024Z
+ 2024-07-29T19:49:46.294Z
https://business-science.github.io/pytimetk/reference/floor_date.html
- 2024-07-18T14:46:57.181Z
+ 2024-07-29T19:49:42.985Z
https://business-science.github.io/pytimetk/reference/ts_summary.html
- 2024-07-18T14:46:44.810Z
+ 2024-07-29T19:49:40.263Z
https://business-science.github.io/pytimetk/reference/timeseries_unit_frequency_table.html
- 2024-07-18T14:46:41.776Z
+ 2024-07-29T19:49:37.292Z
https://business-science.github.io/pytimetk/reference/transform_columns.html
- 2024-07-18T14:46:30.814Z
+ 2024-07-29T19:49:35.437Z
https://business-science.github.io/pytimetk/reference/augment_timeseries_signature.html
- 2024-07-18T14:46:10.887Z
+ 2024-07-29T19:49:33.845Z
https://business-science.github.io/pytimetk/reference/plot_anomalies.html
- 2024-07-18T14:45:44.494Z
+ 2024-07-29T19:49:31.776Z
https://business-science.github.io/pytimetk/reference/augment_ewm.html
- 2024-07-18T14:45:32.147Z
+ 2024-07-29T19:49:28.955Z
https://business-science.github.io/pytimetk/reference/make_future_timeseries.html
- 2024-07-18T14:45:30.304Z
+ 2024-07-29T19:49:26.987Z
https://business-science.github.io/pytimetk/reference/augment_roc.html
- 2024-07-18T14:45:28.880Z
+ 2024-07-29T19:49:25.475Z
https://business-science.github.io/pytimetk/reference/get_frequency_summary.html
- 2024-07-18T14:45:27.178Z
+ 2024-07-29T19:49:23.684Z
https://business-science.github.io/pytimetk/reference/augment_qsmomentum.html
- 2024-07-18T14:45:15.772Z
+ 2024-07-29T19:49:21.795Z
https://business-science.github.io/pytimetk/reference/augment_hilbert.html
- 2024-07-18T14:45:13.642Z
+ 2024-07-29T19:49:19.449Z
https://business-science.github.io/pytimetk/reference/progress_apply.html
- 2024-07-18T14:45:10.909Z
+ 2024-07-29T19:49:16.353Z
https://business-science.github.io/pytimetk/reference/flatten_multiindex_column_names.html
- 2024-07-18T14:45:09.287Z
+ 2024-07-29T19:49:14.626Z
https://business-science.github.io/pytimetk/reference/get_frequency.html
- 2024-07-18T14:45:07.735Z
+ 2024-07-29T19:49:12.891Z
https://business-science.github.io/pytimetk/reference/future_frame.html
- 2024-07-18T14:45:06.022Z
+ 2024-07-29T19:49:11.183Z
https://business-science.github.io/pytimetk/reference/week_of_month.html
- 2024-07-18T14:44:52.374Z
+ 2024-07-29T19:49:08.551Z
https://business-science.github.io/pytimetk/reference/correlate.html
- 2024-07-18T14:44:50.492Z
+ 2024-07-29T19:49:06.509Z
https://business-science.github.io/pytimetk/reference/filter_by_time.html
- 2024-07-18T14:44:37.492Z
+ 2024-07-29T19:49:04.128Z
https://business-science.github.io/pytimetk/reference/summarize_by_time.html
- 2024-07-18T14:44:35.084Z
+ 2024-07-29T19:49:01.635Z
https://business-science.github.io/pytimetk/reference/drop_zero_variance.html
- 2024-07-18T14:44:31.961Z
+ 2024-07-29T19:48:58.390Z
https://business-science.github.io/pytimetk/reference/index.html
- 2024-07-18T14:44:21.411Z
+ 2024-07-29T19:48:56.366Z
https://business-science.github.io/pytimetk/reference/get_pandas_frequency.html
- 2024-07-18T14:44:19.414Z
+ 2024-07-29T19:48:54.239Z
https://business-science.github.io/pytimetk/reference/palette_timetk.html
- 2024-07-18T14:44:06.884Z
+ 2024-07-29T19:48:52.658Z
https://business-science.github.io/pytimetk/reference/get_date_summary.html
- 2024-07-18T14:43:56.614Z
+ 2024-07-29T19:48:50.984Z
https://business-science.github.io/pytimetk/reference/is_holiday.html
- 2024-07-18T14:43:54.722Z
+ 2024-07-29T19:48:49.027Z
https://business-science.github.io/pytimetk/reference/get_available_datasets.html
- 2024-07-18T14:43:43.714Z
+ 2024-07-29T19:48:47.346Z
https://business-science.github.io/pytimetk/reference/augment_wavelet.html
- 2024-07-18T14:43:41.893Z
+ 2024-07-29T19:48:45.406Z
https://business-science.github.io/pytimetk/reference/augment_cmo.html
- 2024-07-18T14:43:30.902Z
+ 2024-07-29T19:48:42.891Z
https://business-science.github.io/pytimetk/reference/augment_expanding.html
- 2024-07-18T14:43:27.900Z
+ 2024-07-29T19:48:39.612Z
https://business-science.github.io/pytimetk/reference/ceil_date.html
- 2024-07-18T14:43:11.560Z
+ 2024-07-29T19:48:37.018Z
https://business-science.github.io/pytimetk/reference/augment_rolling_apply.html
- 2024-07-18T14:43:09.714Z
+ 2024-07-29T19:48:34.502Z
https://business-science.github.io/pytimetk/reference/augment_rolling.html
- 2024-07-18T14:43:07.372Z
+ 2024-07-29T19:48:31.722Z
https://business-science.github.io/pytimetk/performance/01_speed_comparisons.html
- 2024-07-18T14:42:47.820Z
+ 2024-07-29T19:48:19.180Z
https://business-science.github.io/pytimetk/tutorials/01_sales_crm.html
- 2024-07-18T14:42:38.525Z
+ 2024-07-29T19:48:09.334Z
https://business-science.github.io/pytimetk/tutorials/05_clustering.html
- 2024-07-18T14:42:30.707Z
+ 2024-07-29T19:48:00.850Z
https://business-science.github.io/pytimetk/tutorials/04_anomaly_detection.html
- 2024-07-18T14:42:28.736Z
+ 2024-07-29T19:47:58.963Z
https://business-science.github.io/pytimetk/guides/04_wrangling.html
- 2024-07-18T14:42:26.287Z
+ 2024-07-29T19:47:56.828Z
https://business-science.github.io/pytimetk/guides/01_visualization.html
- 2024-07-18T14:42:20.420Z
+ 2024-07-29T19:47:51.388Z
https://business-science.github.io/pytimetk/guides/02_timetk_concepts.html
- 2024-07-18T14:42:17.869Z
+ 2024-07-29T19:47:49.111Z
https://business-science.github.io/pytimetk/getting-started/02_quick_start.html
- 2024-07-18T14:42:12.224Z
+ 2024-07-29T19:47:44.027Z
https://business-science.github.io/pytimetk/index.html
- 2024-07-18T14:42:10.323Z
+ 2024-07-29T19:47:42.086Z
https://business-science.github.io/pytimetk/contributing.html
- 2024-07-18T14:42:09.009Z
+ 2024-07-29T19:47:40.628Z
https://business-science.github.io/pytimetk/getting-started/01_installation.html
- 2024-07-18T14:42:11.072Z
+ 2024-07-29T19:47:42.873Z
https://business-science.github.io/pytimetk/guides/03_pandas_frequency.html
- 2024-07-18T14:42:13.277Z
+ 2024-07-29T19:47:45.076Z
https://business-science.github.io/pytimetk/guides/06_anomalize.html
- 2024-07-18T14:42:19.084Z
+ 2024-07-29T19:47:50.175Z
https://business-science.github.io/pytimetk/guides/05_augmenting.html
- 2024-07-18T14:42:24.079Z
+ 2024-07-29T19:47:54.799Z
https://business-science.github.io/pytimetk/tutorials/06_correlationfunnel.html
- 2024-07-18T14:42:29.904Z
+ 2024-07-29T19:48:00.019Z
https://business-science.github.io/pytimetk/tutorials/03_demand_forecasting.html
- 2024-07-18T14:42:34.115Z
+ 2024-07-29T19:48:04.698Z
https://business-science.github.io/pytimetk/tutorials/02_finance.html
- 2024-07-18T14:42:46.657Z
+ 2024-07-29T19:48:17.987Z
https://business-science.github.io/pytimetk/changelog-news.html
- 2024-07-18T14:42:52.809Z
+ 2024-07-29T19:48:30.237Z
https://business-science.github.io/pytimetk/reference/plot_timeseries.html
- 2024-07-18T14:43:08.736Z
+ 2024-07-29T19:48:33.259Z
https://business-science.github.io/pytimetk/reference/augment_diffs.html
- 2024-07-18T14:43:10.809Z
+ 2024-07-29T19:48:36.097Z
https://business-science.github.io/pytimetk/reference/time_scale_template.html
- 2024-07-18T14:43:12.360Z
+ 2024-07-29T19:48:37.932Z
https://business-science.github.io/pytimetk/reference/pad_by_time.html
- 2024-07-18T14:43:29.410Z
+ 2024-07-29T19:48:41.236Z
https://business-science.github.io/pytimetk/reference/plot_anomalies_cleaned.html
- 2024-07-18T14:43:31.903Z
+ 2024-07-29T19:48:44.013Z
https://business-science.github.io/pytimetk/reference/plot_anomaly_decomp.html
- 2024-07-18T14:43:42.954Z
+ 2024-07-29T19:48:46.471Z
https://business-science.github.io/pytimetk/reference/get_seasonal_frequency.html
- 2024-07-18T14:43:44.670Z
+ 2024-07-29T19:48:48.207Z
https://business-science.github.io/pytimetk/reference/plot_correlation_funnel.html
- 2024-07-18T14:43:55.807Z
+ 2024-07-29T19:48:50.112Z
https://business-science.github.io/pytimetk/reference/glimpse.html
- 2024-07-18T14:43:57.380Z
+ 2024-07-29T19:48:51.869Z
https://business-science.github.io/pytimetk/reference/augment_ppo.html
- 2024-07-18T14:44:18.896Z
+ 2024-07-29T19:48:53.718Z
https://business-science.github.io/pytimetk/reference/augment_bbands.html
- 2024-07-18T14:44:20.440Z
+ 2024-07-29T19:48:55.284Z
https://business-science.github.io/pytimetk/reference/apply_by_time.html
- 2024-07-18T14:44:31.487Z
+ 2024-07-29T19:48:57.887Z
https://business-science.github.io/pytimetk/reference/plot_anomalies_decomp.html
- 2024-07-18T14:44:33.005Z
+ 2024-07-29T19:48:59.463Z
https://business-science.github.io/pytimetk/reference/parallel_apply.html
- 2024-07-18T14:44:36.107Z
+ 2024-07-29T19:49:02.639Z
https://business-science.github.io/pytimetk/reference/augment_expanding_apply.html
- 2024-07-18T14:44:49.432Z
+ 2024-07-29T19:49:05.320Z
https://business-science.github.io/pytimetk/reference/augment_fourier.html
- 2024-07-18T14:44:51.618Z
+ 2024-07-29T19:49:07.699Z
https://business-science.github.io/pytimetk/reference/get_trend_frequency.html
- 2024-07-18T14:44:53.175Z
+ 2024-07-29T19:49:09.383Z
https://business-science.github.io/pytimetk/reference/augment_pct_change.html
- 2024-07-18T14:45:07.213Z
+ 2024-07-29T19:49:12.355Z
https://business-science.github.io/pytimetk/reference/make_weekday_sequence.html
- 2024-07-18T14:45:08.511Z
+ 2024-07-29T19:49:13.739Z
https://business-science.github.io/pytimetk/reference/theme_timetk.html
- 2024-07-18T14:45:10.114Z
+ 2024-07-29T19:49:15.506Z
https://business-science.github.io/pytimetk/reference/augment_rsi.html
- 2024-07-18T14:45:12.382Z
+ 2024-07-29T19:49:17.986Z
https://business-science.github.io/pytimetk/reference/augment_leads.html
- 2024-07-18T14:45:14.935Z
+ 2024-07-29T19:49:20.840Z
https://business-science.github.io/pytimetk/reference/binarize.html
- 2024-07-18T14:45:16.675Z
+ 2024-07-29T19:49:22.801Z
https://business-science.github.io/pytimetk/reference/load_dataset.html
- 2024-07-18T14:45:27.773Z
+ 2024-07-29T19:49:24.314Z
https://business-science.github.io/pytimetk/reference/get_diff_summary.html
- 2024-07-18T14:45:29.447Z
+ 2024-07-29T19:49:26.089Z
https://business-science.github.io/pytimetk/reference/make_weekend_sequence.html
- 2024-07-18T14:45:31.169Z
+ 2024-07-29T19:49:27.927Z
https://business-science.github.io/pytimetk/reference/get_holiday_signature.html
- 2024-07-18T14:45:43.157Z
+ 2024-07-29T19:49:30.441Z
https://business-science.github.io/pytimetk/reference/augment_atr.html
- 2024-07-18T14:46:05.884Z
+ 2024-07-29T19:49:32.871Z
https://business-science.github.io/pytimetk/reference/augment_macd.html
- 2024-07-18T14:46:30.244Z
+ 2024-07-29T19:49:34.894Z
https://business-science.github.io/pytimetk/reference/get_timeseries_signature.html
- 2024-07-18T14:46:31.730Z
+ 2024-07-29T19:49:36.397Z
https://business-science.github.io/pytimetk/reference/augment_lags.html
- 2024-07-18T14:46:43.267Z
+ 2024-07-29T19:49:38.779Z
https://business-science.github.io/pytimetk/reference/augment_holiday_signature.html
- 2024-07-18T14:46:56.397Z
+ 2024-07-29T19:49:42.101Z
https://business-science.github.io/pytimetk/reference/anomalize.html
- 2024-07-18T14:47:15.011Z
+ 2024-07-29T19:49:45.181Z
diff --git a/docs/changelog-news.qmd b/docs/changelog-news.qmd
index f1262d34..00c623dd 100644
--- a/docs/changelog-news.qmd
+++ b/docs/changelog-news.qmd
@@ -6,7 +6,7 @@ toc-depth: 3
number-sections: false
---
-# pytimetk 0.4.0.9000 (Development Version)
+# pytimetk 1.0.0
## Pandas and Polars Compatibility:
diff --git a/docs/index.ipynb b/docs/index.ipynb
new file mode 100644
index 00000000..a8b97689
--- /dev/null
+++ b/docs/index.ipynb
@@ -0,0 +1,224 @@
+{
+ "cells": [
+ {
+ "cell_type": "raw",
+ "metadata": {},
+ "source": [
+ "---\n",
+ "toc: true\n",
+ "toc-depth: 3\n",
+ "number-sections: true\n",
+ "number-depth: 2\n",
+ "---"
+ ],
+ "id": "02f0b39e"
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ "
\n",
+ " \n",
+ " \n",
+ "
\n",
+ "\n",
+ "# PyTimeTK \n",
+ "\n",
+ "> Time series easier, faster, more fun. Pytimetk.\n",
+ "\n",
+ "**PyTimetk's Mission:** To make time series analysis easier, faster, and more enjoyable in Python.\n",
+ "\n",
+ "[**Please β us on GitHub (it takes 2-seconds and means a lot).**](https://github.com/business-science/pytimetk)\n",
+ "\n",
+ "# Introducing pytimetk: Simplifying Time Series Analysis for Everyone\n",
+ "\n",
+ "Time series analysis is fundamental in many fields, from business forecasting to scientific research. While the Python ecosystem offers tools like `pandas`, they sometimes can be verbose and not optimized for all operations, especially for complex time-based aggregations and visualizations.\n",
+ "\n",
+ "Enter **pytimetk**. Crafted with a blend of ease-of-use and computational efficiency, `pytimetk` significantly simplifies the process of time series manipulation and visualization. By leveraging the `polars` backend, you can experience speed improvements ranging from 3X to a whopping 3500X. Let's dive into a comparative analysis.\n",
+ "\n",
+ "\n",
+ "| Features/Properties | **pytimetk** | **pandas (+matplotlib)** |\n",
+ "|---------------------|-------------------------------|---------------------------------------|\n",
+ "| **Speed** | π 3X to 500X Faster | π’ Standard |\n",
+ "| **Code Simplicity** | π Concise, readable syntax | π Often verbose |\n",
+ "| `plot_timeseries()` | π¨ 2 lines, no customization | π¨ 16 lines, customization needed |\n",
+ "| `summarize_by_time()` | π 2 lines, 13.4X faster | π 6 lines, 2 for-loops |\n",
+ "| `pad_by_time()` | β³ 2 lines, fills gaps in timeseries | β No equivalent |\n",
+ "| `anomalize()` | π 2 lines, detects and corrects anomalies | β No equivalent |\n",
+ "| `augment_timeseries_signature()` | π
1 line, all calendar features | π 30 lines of `dt` extractors |\n",
+ "| `augment_rolling()` | ποΈ 10X to 3500X faster | π’ Slow Rolling Operations |\n",
+ "\n",
+ "As evident from the table, **pytimetk** is not just about speed; it also simplifies your codebase. For example, `summarize_by_time()`, converts a 6-line, double for-loop routine in `pandas` into a concise 2-line operation. And with the `polars` engine, get results 13.4X faster than `pandas`!\n",
+ " \n",
+ "Similarly, `plot_timeseries()` dramatically streamlines the plotting process, encapsulating what would typically require 16 lines of `matplotlib` code into a mere 2-line command in **pytimetk**, without sacrificing customization or quality. And with `plotly` and `plotnine` engines, you can create interactive plots and beautiful static visualizations with just a few lines of code.\n",
+ "\n",
+ "For calendar features, **pytimetk** offers `augment_timeseries_signature()` which cuts down on over 30 lines of `pandas` dt extractions. For rolling features, **pytimetk** offers `augment_rolling()`, which is 10X to 3500X faster than `pandas`. It also offers `pad_by_time()` to fill gaps in your time series data, and `anomalize()` to detect and correct anomalies in your time series data.\n",
+ "\n",
+ "Join the revolution in time series analysis. Reduce your code complexity, increase your productivity, and harness the speed that **pytimetk** brings to your workflows.\n",
+ "\n",
+ "Explore more at our [pytimetk homepage](https://business-science.github.io/pytimetk/).\n",
+ "\n",
+ "# π Installation\n",
+ "\n",
+ "Install the Latest Stable Version:\n",
+ "\n",
+ "``` bash\n",
+ "pip install pytimetk\n",
+ "```\n",
+ "\n",
+ "Alternatively, install the Development GitHub Version:\n",
+ "\n",
+ "```bash\n",
+ "pip install git+https://github.com/business-science/pytimetk.git\n",
+ "```\n",
+ "\n",
+ "# π Quick Start: A Monthly Sales Analysis\n",
+ "\n",
+ "This is a simple exercise to showcase the power of [`summarize_by_time()`](/reference/summarize_by_time.html):\n",
+ "\n",
+ "### Import Libraries & Data\n",
+ "\n",
+ "First, `import pytimetk as tk`. This gets you access to the most important functions. Use `tk.load_dataset()` to load the \"bike_sales_sample\" dataset.\n",
+ "\n",
+ "::: {.callout-note collapse=\"false\"}\n",
+ "## About the Bike Sales Sample Dataset\n",
+ "\n",
+ "This dataset contains \"orderlines\" for orders recieved. The `order_date` column contains timestamps. We can use this column to peform sales aggregations (e.g. total revenue).\n",
+ ":::\n"
+ ],
+ "id": "965e83de"
+ },
+ {
+ "cell_type": "code",
+ "metadata": {},
+ "source": [
+ "import pytimetk as tk\n",
+ "import pandas as pd\n",
+ "\n",
+ "df = tk.load_dataset('bike_sales_sample')\n",
+ "df['order_date'] = pd.to_datetime(df['order_date'])\n",
+ "\n",
+ "df "
+ ],
+ "id": "00147f1b",
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Using `summarize_by_time()` for a Sales Analysis\n",
+ "\n",
+ "Your company might be interested in sales patterns for various categories of bicycles. We can obtain a grouped monthly sales aggregation by `category_1` in two lines of code:\n",
+ "\n",
+ "1. First use pandas's `groupby()` method to group the DataFrame on `category_1`\n",
+ "2. Next, use timetk's `summarize_by_time()` method to apply the sum function my month start (\"MS\") and use `wide_format = 'False'` to return the dataframe in a long format (Note long format is the default). \n",
+ "\n",
+ "The result is the total revenue for Mountain and Road bikes by month. \n"
+ ],
+ "id": "77d83578"
+ },
+ {
+ "cell_type": "code",
+ "metadata": {},
+ "source": [
+ "summary_category_1_df = df \\\n",
+ " .groupby(\"category_1\") \\\n",
+ " .summarize_by_time(\n",
+ " date_column = 'order_date', \n",
+ " value_column = 'total_price',\n",
+ " freq = \"MS\",\n",
+ " agg_func = 'sum',\n",
+ " engine = \"polars\"\n",
+ " )\n",
+ "\n",
+ "# First 5 rows shown\n",
+ "summary_category_1_df.head()"
+ ],
+ "id": "73f70cb8",
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "### Visualizing Sales Patterns\n",
+ "\n",
+ "::: {.callout-note collapse=\"false\"}\n",
+ "## Now available: `plot_timeseries()`.\n",
+ "\n",
+ "Plot time series is a quick and easy way to visualize time series and make professional time series plots. \n",
+ ":::\n",
+ "\n",
+ "With the data summarized by time, we can visualize with `plot_timeseries()`. `pytimetk` functions are `groupby()` aware meaning they understand if your data is grouped to do things by group. This is useful in time series where we often deal with 100s of time series groups. \n"
+ ],
+ "id": "deb71506"
+ },
+ {
+ "cell_type": "code",
+ "metadata": {},
+ "source": [
+ "summary_category_1_df \\\n",
+ " .groupby('category_1') \\\n",
+ " .plot_timeseries(\n",
+ " date_column = 'order_date',\n",
+ " value_column = 'total_price',\n",
+ " smooth_frac = 0.8,\n",
+ " engine = \"plotnine\"\n",
+ " )"
+ ],
+ "id": "9e1cdcbf",
+ "execution_count": null,
+ "outputs": []
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# π Documentation\n",
+ "\n",
+ "Next step? Learn more with the [pytimetk documentation](https://business-science.github.io/pytimetk/)\n",
+ "\n",
+ "- [π Overview](https://business-science.github.io/pytimetk/)\n",
+ "- [π Getting Started](https://business-science.github.io/pytimetk/getting-started/02_quick_start.html)\n",
+ "- [πΊοΈ Beginner Guides](https://business-science.github.io/pytimetk/guides/01_visualization.html)\n",
+ "- [πApplied Data Science Tutorials with PyTimeTK](https://business-science.github.io/pytimetk/tutorials/01_sales_crm.html)\n",
+ "- [ποΈSpeed Comparisons](https://business-science.github.io/pytimetk/performance/01_speed_comparisons.html)\n",
+ "- [π API Reference](https://business-science.github.io/pytimetk/reference/)\n",
+ "\n",
+ "# π» Contributing\n",
+ "\n",
+ "Interested in helping us make this the best Python package for time series analysis? We'd love your help. \n",
+ "\n",
+ "[Follow these instructions to Contribute.](/contributing.html)\n",
+ "\n",
+ "# π More Coming Soon...\n",
+ "\n",
+ "We are in the early stages of development. But it's obvious the potential for `pytimetk` now in Python. π\n",
+ "\n",
+ "- Please [β us on GitHub](https://github.com/business-science/pytimetk) (it takes 2-seconds and means a lot). \n",
+ "- To make requests, please see our [Project Roadmap GH Issue #2](https://github.com/business-science/pytimetk/issues/2). You can make requests there. \n",
+ "- Want to contribute? [See our contributing guide here.](/contributing.html) \n"
+ ],
+ "id": "3516333e"
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "name": "python3",
+ "language": "python",
+ "display_name": "Python 3 (ipykernel)"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}
\ No newline at end of file
diff --git a/docs/index.qmd b/docs/index.qmd
index fe3b4848..d3dd7374 100644
--- a/docs/index.qmd
+++ b/docs/index.qmd
@@ -110,7 +110,8 @@ summary_category_1_df = df \
value_column = 'total_price',
freq = "MS",
agg_func = 'sum',
- wide_format = False
+ wide_format = False,
+ # engine = "polars"
)
# First 5 rows shown
@@ -135,7 +136,8 @@ summary_category_1_df \
.plot_timeseries(
date_column = 'order_date',
value_column = 'total_price',
- smooth_frac = 0.8
+ smooth_frac = 0.8,
+ engine = "plotnine"
)
```
diff --git a/docs/index_files/execute-results/html.json b/docs/index_files/execute-results/html.json
new file mode 100644
index 00000000..47dc0eee
--- /dev/null
+++ b/docs/index_files/execute-results/html.json
@@ -0,0 +1,15 @@
+{
+ "hash": "c09375b4a33109b8fbc47186325c91ce",
+ "result": {
+ "markdown": "---\ntoc: true\ntoc-depth: 3\nnumber-sections: true\nnumber-depth: 2\ntitle: PyTimeTK \n---\n\n\n\n\n\n\n\n> Time series easier, faster, more fun. Pytimetk.\n\n**PyTimetk's Mission:** To make time series analysis easier, faster, and more enjoyable in Python.\n\n[**Please β us on GitHub (it takes 2-seconds and means a lot).**](https://github.com/business-science/pytimetk)\n\n# Introducing pytimetk: Simplifying Time Series Analysis for Everyone\n\nTime series analysis is fundamental in many fields, from business forecasting to scientific research. While the Python ecosystem offers tools like `pandas`, they sometimes can be verbose and not optimized for all operations, especially for complex time-based aggregations and visualizations.\n\nEnter **pytimetk**. Crafted with a blend of ease-of-use and computational efficiency, `pytimetk` significantly simplifies the process of time series manipulation and visualization. By leveraging the `polars` backend, you can experience speed improvements ranging from 3X to a whopping 3500X. Let's dive into a comparative analysis.\n\n\n| Features/Properties | **pytimetk** | **pandas (+matplotlib)** |\n|---------------------|-------------------------------|---------------------------------------|\n| **Speed** | π 3X to 500X Faster | π’ Standard |\n| **Code Simplicity** | π Concise, readable syntax | π Often verbose |\n| `plot_timeseries()` | π¨ 2 lines, no customization | π¨ 16 lines, customization needed |\n| `summarize_by_time()` | π 2 lines, 13.4X faster | π 6 lines, 2 for-loops |\n| `pad_by_time()` | β³ 2 lines, fills gaps in timeseries | β No equivalent |\n| `anomalize()` | π 2 lines, detects and corrects anomalies | β No equivalent |\n| `augment_timeseries_signature()` | π
1 line, all calendar features | π 30 lines of `dt` extractors |\n| `augment_rolling()` | ποΈ 10X to 3500X faster | π’ Slow Rolling Operations |\n\nAs evident from the table, **pytimetk** is not just about speed; it also simplifies your codebase. For example, `summarize_by_time()`, converts a 6-line, double for-loop routine in `pandas` into a concise 2-line operation. And with the `polars` engine, get results 13.4X faster than `pandas`!\n \nSimilarly, `plot_timeseries()` dramatically streamlines the plotting process, encapsulating what would typically require 16 lines of `matplotlib` code into a mere 2-line command in **pytimetk**, without sacrificing customization or quality. And with `plotly` and `plotnine` engines, you can create interactive plots and beautiful static visualizations with just a few lines of code.\n\nFor calendar features, **pytimetk** offers `augment_timeseries_signature()` which cuts down on over 30 lines of `pandas` dt extractions. For rolling features, **pytimetk** offers `augment_rolling()`, which is 10X to 3500X faster than `pandas`. It also offers `pad_by_time()` to fill gaps in your time series data, and `anomalize()` to detect and correct anomalies in your time series data.\n\nJoin the revolution in time series analysis. Reduce your code complexity, increase your productivity, and harness the speed that **pytimetk** brings to your workflows.\n\nExplore more at our [pytimetk homepage](https://business-science.github.io/pytimetk/).\n\n# π Installation\n\nInstall the Latest Stable Version:\n\n``` bash\npip install pytimetk\n```\n\nAlternatively, install the Development GitHub Version:\n\n```bash\npip install git+https://github.com/business-science/pytimetk.git\n```\n\n# π Quick Start: A Monthly Sales Analysis\n\nThis is a simple exercise to showcase the power of [`summarize_by_time()`](/reference/summarize_by_time.html):\n\n### Import Libraries & Data\n\nFirst, `import pytimetk as tk`. This gets you access to the most important functions. Use `tk.load_dataset()` to load the \"bike_sales_sample\" dataset.\n\n::: {.callout-note collapse=\"false\"}\n## About the Bike Sales Sample Dataset\n\nThis dataset contains \"orderlines\" for orders recieved. The `order_date` column contains timestamps. We can use this column to peform sales aggregations (e.g. total revenue).\n:::\n\n\n::: {.cell execution_count=1}\n``` {.python .cell-code}\nimport pytimetk as tk\nimport pandas as pd\n\ndf = tk.load_dataset('bike_sales_sample')\ndf['order_date'] = pd.to_datetime(df['order_date'])\n\ndf \n```\n\n::: {.cell-output .cell-output-display execution_count=1}\n```{=html}\n\n\n
\n \n \n | \n order_id | \n order_line | \n order_date | \n quantity | \n price | \n total_price | \n model | \n category_1 | \n category_2 | \n frame_material | \n bikeshop_name | \n city | \n state | \n
\n \n \n \n 0 | \n 1 | \n 1 | \n 2011-01-07 | \n 1 | \n 6070 | \n 6070 | \n Jekyll Carbon 2 | \n Mountain | \n Over Mountain | \n Carbon | \n Ithaca Mountain Climbers | \n Ithaca | \n NY | \n
\n \n 1 | \n 1 | \n 2 | \n 2011-01-07 | \n 1 | \n 5970 | \n 5970 | \n Trigger Carbon 2 | \n Mountain | \n Over Mountain | \n Carbon | \n Ithaca Mountain Climbers | \n Ithaca | \n NY | \n
\n \n 2 | \n 2 | \n 1 | \n 2011-01-10 | \n 1 | \n 2770 | \n 2770 | \n Beast of the East 1 | \n Mountain | \n Trail | \n Aluminum | \n Kansas City 29ers | \n Kansas City | \n KS | \n
\n \n 3 | \n 2 | \n 2 | \n 2011-01-10 | \n 1 | \n 5970 | \n 5970 | \n Trigger Carbon 2 | \n Mountain | \n Over Mountain | \n Carbon | \n Kansas City 29ers | \n Kansas City | \n KS | \n
\n \n 4 | \n 3 | \n 1 | \n 2011-01-10 | \n 1 | \n 10660 | \n 10660 | \n Supersix Evo Hi-Mod Team | \n Road | \n Elite Road | \n Carbon | \n Louisville Race Equipment | \n Louisville | \n KY | \n
\n \n ... | \n ... | \n ... | \n ... | \n ... | \n ... | \n ... | \n ... | \n ... | \n ... | \n ... | \n ... | \n ... | \n ... | \n
\n \n 2461 | \n 321 | \n 3 | \n 2011-12-22 | \n 1 | \n 1410 | \n 1410 | \n CAAD8 105 | \n Road | \n Elite Road | \n Aluminum | \n Miami Race Equipment | \n Miami | \n FL | \n
\n \n 2462 | \n 322 | \n 1 | \n 2011-12-28 | \n 1 | \n 1250 | \n 1250 | \n Synapse Disc Tiagra | \n Road | \n Endurance Road | \n Aluminum | \n Phoenix Bi-peds | \n Phoenix | \n AZ | \n
\n \n 2463 | \n 322 | \n 2 | \n 2011-12-28 | \n 1 | \n 2660 | \n 2660 | \n Bad Habit 2 | \n Mountain | \n Trail | \n Aluminum | \n Phoenix Bi-peds | \n Phoenix | \n AZ | \n
\n \n 2464 | \n 322 | \n 3 | \n 2011-12-28 | \n 1 | \n 2340 | \n 2340 | \n F-Si 1 | \n Mountain | \n Cross Country Race | \n Aluminum | \n Phoenix Bi-peds | \n Phoenix | \n AZ | \n
\n \n 2465 | \n 322 | \n 4 | \n 2011-12-28 | \n 1 | \n 5860 | \n 5860 | \n Synapse Hi-Mod Dura Ace | \n Road | \n Endurance Road | \n Carbon | \n Phoenix Bi-peds | \n Phoenix | \n AZ | \n
\n \n
\n
2466 rows Γ 13 columns
\n
\n```\n:::\n:::\n\n\n### Using `summarize_by_time()` for a Sales Analysis\n\nYour company might be interested in sales patterns for various categories of bicycles. We can obtain a grouped monthly sales aggregation by `category_1` in two lines of code:\n\n1. First use pandas's `groupby()` method to group the DataFrame on `category_1`\n2. Next, use timetk's `summarize_by_time()` method to apply the sum function my month start (\"MS\") and use `wide_format = 'False'` to return the dataframe in a long format (Note long format is the default). \n\nThe result is the total revenue for Mountain and Road bikes by month. \n\n::: {.cell execution_count=2}\n``` {.python .cell-code}\nsummary_category_1_df = df \\\n .groupby(\"category_1\") \\\n .summarize_by_time(\n date_column = 'order_date', \n value_column = 'total_price',\n freq = \"MS\",\n agg_func = 'sum',\n wide_format = False\n )\n\n# First 5 rows shown\nsummary_category_1_df.head()\n```\n\n::: {.cell-output .cell-output-display execution_count=2}\n```{=html}\n\n\n
\n \n \n | \n category_1 | \n order_date | \n total_price | \n
\n \n \n \n 0 | \n Mountain | \n 2011-01-01 | \n 221490 | \n
\n \n 1 | \n Mountain | \n 2011-02-01 | \n 660555 | \n
\n \n 2 | \n Mountain | \n 2011-03-01 | \n 358855 | \n
\n \n 3 | \n Mountain | \n 2011-04-01 | \n 1075975 | \n
\n \n 4 | \n Mountain | \n 2011-05-01 | \n 450440 | \n
\n \n
\n
\n```\n:::\n:::\n\n\n### Visualizing Sales Patterns\n\n::: {.callout-note collapse=\"false\"}\n## Now available: `plot_timeseries()`.\n\nPlot time series is a quick and easy way to visualize time series and make professional time series plots. \n:::\n\nWith the data summarized by time, we can visualize with `plot_timeseries()`. `pytimetk` functions are `groupby()` aware meaning they understand if your data is grouped to do things by group. This is useful in time series where we often deal with 100s of time series groups. \n\n::: {.cell execution_count=3}\n``` {.python .cell-code}\nsummary_category_1_df \\\n .groupby('category_1') \\\n .plot_timeseries(\n date_column = 'order_date',\n value_column = 'total_price',\n smooth_frac = 0.8\n )\n```\n\n::: {.cell-output .cell-output-display}\n```{=html}\n\n```\n:::\n:::\n\n\n# π Documentation\n\nNext step? Learn more with the [pytimetk documentation](https://business-science.github.io/pytimetk/)\n\n- [π Overview](https://business-science.github.io/pytimetk/)\n- [π Getting Started](https://business-science.github.io/pytimetk/getting-started/02_quick_start.html)\n- [πΊοΈ Beginner Guides](https://business-science.github.io/pytimetk/guides/01_visualization.html)\n- [πApplied Data Science Tutorials with PyTimeTK](https://business-science.github.io/pytimetk/tutorials/01_sales_crm.html)\n- [ποΈSpeed Comparisons](https://business-science.github.io/pytimetk/performance/01_speed_comparisons.html)\n- [π API Reference](https://business-science.github.io/pytimetk/reference/)\n\n# π» Contributing\n\nInterested in helping us make this the best Python package for time series analysis? We'd love your help. \n\n[Follow these instructions to Contribute.](/contributing.html)\n\n# π More Coming Soon...\n\nWe are in the early stages of development. But it's obvious the potential for `pytimetk` now in Python. π\n\n- Please [β us on GitHub](https://github.com/business-science/pytimetk) (it takes 2-seconds and means a lot). \n- To make requests, please see our [Project Roadmap GH Issue #2](https://github.com/business-science/pytimetk/issues/2). You can make requests there. \n- Want to contribute? [See our contributing guide here.](/contributing.html) \n\n",
+ "supporting": [
+ "index_files/figure-html"
+ ],
+ "filters": [],
+ "includes": {
+ "include-in-header": [
+ "\n\n\n\n\n"
+ ]
+ }
+ }
+}
\ No newline at end of file
diff --git a/pyproject.toml b/pyproject.toml
index c0eb5bf5..c8b1faf9 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -1,6 +1,6 @@
[tool.poetry]
name = "pytimetk"
-version = "0.4.0.9000"
+version = "1.0.0"
description = "The time series toolkit for Python."
authors = [
"Business Science ",