-
Notifications
You must be signed in to change notification settings - Fork 22
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Recipe notebook for GenseriesSinusoids
- Loading branch information
1 parent
fc09800
commit 1290313
Showing
1 changed file
with
308 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,308 @@ | ||
{ | ||
"cells": [ | ||
{ | ||
"cell_type": "markdown", | ||
"id": "bc549e6c-0cc4-4188-94a3-a9bdd3ae3dfa", | ||
"metadata": {}, | ||
"source": [ | ||
"<header>\n", | ||
" <p style='font-size:36px;font-family:Arial; color:#F0F0F0; background-color: #00233c; padding-left: 20pt; padding-top: 20pt;padding-bottom: 10pt; padding-right: 20pt;'>\n", | ||
" GenseriesSinusoids function in Vantage\n", | ||
" <br>\n", | ||
" <img id=\"teradata-logo\" src=\"https://storage.googleapis.com/clearscape_analytics_demo_data/DEMO_Logo/teradata.svg\" alt=\"Teradata\" style=\"width: 125px; height: auto; margin-top: 20pt;\">\n", | ||
" </p>\n", | ||
"</header>" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"id": "7ae7611a-0795-4168-b716-01fee6880cbd", | ||
"metadata": {}, | ||
"source": [ | ||
"<p style = 'font-size:20px;font-family:Arial;color:#00233C'><b>Introduction</b></p>\n", | ||
"\n", | ||
"<p style = 'font-size:20px;font-family:Arial;color:#00233C'><b>GenseriesSinusoids</b></p>\n", | ||
"<p style = 'font-size:16px;font-family:Arial;color:#00233C'> The GenseriesSinusoids() function generates a result series containing a subset of the sinusoidal elements periodicities (sinusoids).</p>\n", | ||
"\n", | ||
"<p style = 'font-size:16px;font-family:Arial;color:#00233C'>User can subtract the new time series from the original time series by removing the periodicities. The following procedure is an example of how to use GenseriesSinusoids() function:</p>\n", | ||
"<li style = 'font-size:16px;font-family:Arial;color:#00233C'>Use the LineSpec() or PowerSpec() function with \"freq_style\" argument set to 'K_PERIODICITY' to determine the periodicities in the series.</li>\n", | ||
"<li style = 'font-size:16px;font-family:Arial;color:#00233C'>Use the result dataframe from the GenseriesSinusoids() function to view the periodicities.</li>\n", | ||
"<li style = 'font-size:16px;font-family:Arial;color:#00233C'>Use GenseriesSinusoids() function with the \"periodicities\" argument and a comma-separated list of periodicities to exclude from the data set.</li>\n", | ||
"<li style = 'font-size:16px;font-family:Arial;color:#00233C'>Use the BinarySeriesOp() function to subtract the generated series from the original series using \"mathop\" argument value as 'SUB'.</li>\n", | ||
"<li style = 'font-size:16px;font-family:Arial;color:#00233C'>Use the PowerSpec() function to verify that target periodicities have been removed from the original series.</li>\n", | ||
"</p>" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"id": "6b3a00b4-6661-4c91-9b2d-cb7b0b403140", | ||
"metadata": {}, | ||
"source": [ | ||
"<hr style=\"height:2px;border:none;background-color:#00233C;\">\n", | ||
"<b style = 'font-size:20px;font-family:Arial;color:#00233C'>1. Initiate a connection to Vantage</b>" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"id": "2346857f-e0d3-488a-8a3f-ac6dff752c2b", | ||
"metadata": {}, | ||
"source": [ | ||
"<p style = 'font-size:16px;font-family:Arial;color:#00233C'>In the section, we import the required libraries and set environment variables and environment paths (if required)." | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": null, | ||
"id": "c5af5af3-29d5-4f6a-8334-9df6924e7787", | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"from teradataml import (\n", | ||
" create_context,\n", | ||
" execute_sql,\n", | ||
" load_example_data,\n", | ||
" DataFrame,\n", | ||
" in_schema,\n", | ||
" TDSeries,\n", | ||
" GenseriesSinusoids,\n", | ||
" db_drop_view,\n", | ||
" remove_context,\n", | ||
" copy_to_sql,\n", | ||
" db_drop_table\n", | ||
" )\n", | ||
"\n", | ||
"from teradatasqlalchemy.types import *\n", | ||
"\n", | ||
"from teradataml import to_numeric\n", | ||
"# Modify the following to match the specific client environment settings\n", | ||
"display.max_rows = 5" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"id": "ad3dd7b4-831c-4fb3-ab71-719c8c99a71c", | ||
"metadata": {}, | ||
"source": [ | ||
"<hr style=\"height:1px;border:none;background-color:#00233C;\">\n", | ||
"<p style = 'font-size:18px;font-family:Arial;color:#00233c'><b>1.1 Connect to Vantage</b></p>\n", | ||
"<p style = 'font-size:16px;font-family:Arial;color:#00233C'>You will be prompted to provide the password. Enter your password, press the Enter key, and then use the down arrow to go to the next cell.</p>" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": null, | ||
"id": "2742444c-4349-4b0f-b4e5-b068a8785cd9", | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"%run -i ../../UseCases/startup.ipynb\n", | ||
"eng = create_context(host = 'host.docker.internal', username='demo_user', password = password)\n", | ||
"print(eng)" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": null, | ||
"id": "01c4a128-d106-46ea-8dee-34acc5abd29f", | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"%%capture\n", | ||
"execute_sql('''SET query_band='DEMO=PP_GenseriesSinusoids_Python.ipynb;' UPDATE FOR SESSION; ''')" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"id": "efe2fd2d-63ff-4278-9157-8b9110d682e8", | ||
"metadata": {}, | ||
"source": [ | ||
"<p style = 'font-size:16px;font-family:Arial;color:#00233C'>Begin running steps with Shift + Enter keys. </p>" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"id": "4a6e3852-3b15-4cbd-844d-e7194b3bd204", | ||
"metadata": {}, | ||
"source": [ | ||
"<hr style='height:1px;border:none;background-color:#00233C;'>\n", | ||
"\n", | ||
"<p style = 'font-size:18px;font-family:Arial;color:#00233c'><b>1.2 Getting Data for This Demo</b></p>\n", | ||
"\n", | ||
"<p style = 'font-size:16px;font-family:Arial;color:#00233C'>Here, we will get the time series data which is available in the teradataml library and use the same to show the usage of the function.</p>" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": null, | ||
"id": "398fa0aa-c0df-4130-9dea-53b776fbaf80", | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"load_example_data(\"uaf\", [\"production_data\"])" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"id": "2a3762ac-ba27-4fa3-adba-d577262a4290", | ||
"metadata": {}, | ||
"source": [ | ||
"<hr style=\"height:2px;border:none;background-color:#00233C;\">\n", | ||
"<b style = 'font-size:20px;font-family:Arial;color:#00233C'>2. Data Exploration</b>\n", | ||
"<p style = 'font-size:16px;font-family:Arial;color:#00233C'>Create a \"Virtual DataFrame\" that points to the data set in Vantage. Check the shape of the dataframe as check the datatype of all the columns of the dataframe.</p>" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": null, | ||
"id": "9672d80d-cdcc-4f4c-9399-7c367e7970b1", | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"data = DataFrame.from_table(\"production_data\")\n", | ||
"data" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"id": "4a2f79a0-eb16-4c3b-bec2-c313e97ac940", | ||
"metadata": {}, | ||
"source": [ | ||
"<hr style=\"height:2px;border:none;background-color:#00233C;\">\n", | ||
"<b style = 'font-size:20px;font-family:Arial;color:#00233C'>3. GenseriesSinusoids</b>\n", | ||
"<p style = 'font-size:16px;font-family:Arial;color:#00233C'>The Execute the GenseriesSinusoids() function on TDSeries input to generate a time series containing a subset of the sinusoidal elements periodicities, whose payload content value is REAL.</p>\n", | ||
"\n", | ||
"<p style = 'font-size:16px;font-family:Arial;color:#00233C'>The first step is to convert the data into TDSeries, which is required for the input time series which are passed to the GenseriesSinusoids function.</p>\n" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": null, | ||
"id": "a711f58c-fbd3-4457-9f6a-9cd5c1b192dc", | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"data_series_df = TDSeries(data=data,\n", | ||
" id=\"product_id\",\n", | ||
" row_index=\"TD_TIMECODE\",\n", | ||
" payload_field=\"beer_sales\",\n", | ||
" payload_content=\"REAL\")" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"id": "fbd73eb0-1ef2-4612-a8d5-c69af624bbc7", | ||
"metadata": {}, | ||
"source": [ | ||
"<p style = 'font-size:16px;font-family:Arial;color:#00233C'>The Input parameters which are passed to the GenseriesSinusoids function are as below:</p>\n", | ||
"\n", | ||
"<li style = 'font-size:16px;font-family:Arial;color:#00233C'><code>data</code>: Specifies the input time series, whose payload content value is 'REAL'.</li>\n", | ||
"\n", | ||
"<li style = 'font-size:16px;font-family:Arial;color:#00233C'><code>periodicities</code>: Specifies the periodicity as a comma-separated list, which contains one or more floating point values representing periodicities.</li>\n", | ||
"</p>\n" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": null, | ||
"id": "8965392c-404e-4e25-b5b8-c7ef06069154", | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"uaf_out = GenseriesSinusoids(data=data_series_df,\n", | ||
" periodicities=[0.523, 1.4367])\n", | ||
"\n", | ||
"sinusoid_df = uaf_out.result\n", | ||
"sinusoid_df" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"id": "c25fdaf1-098b-4dea-984b-579c6412557e", | ||
"metadata": {}, | ||
"source": [ | ||
"<hr style=\"height:2px;border:none;background-color:#00233C;\">\n", | ||
"<b style = 'font-size:20px;font-family:Arial;color:#00233C'>4. Cleanup</b>" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"id": "a5d460af-1a32-4681-8094-360c3f25dc1f", | ||
"metadata": {}, | ||
"source": [ | ||
"<p style = 'font-size:18px;font-family:Arial;color:#00233C'><b>Work Tables</b></p>\n", | ||
"<p style = 'font-size:16px;font-family:Arial;color:#00233C'>The following code will clean up tables created above.</p>" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": null, | ||
"id": "9dff9677-dae1-4cc5-b78e-3d197cc41e0c", | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"db_drop_table(\"production_data\")" | ||
] | ||
}, | ||
{ | ||
"cell_type": "code", | ||
"execution_count": null, | ||
"id": "9b96168c-7973-4259-b3e0-668b92fd846e", | ||
"metadata": {}, | ||
"outputs": [], | ||
"source": [ | ||
"remove_context()" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"id": "4317a6cf-1479-4aa8-b30a-ee0a3b5231a8", | ||
"metadata": {}, | ||
"source": [ | ||
"<hr style=\"height:1px;border:none;background-color:#00233C;\">\n", | ||
"\n", | ||
"<p style = 'font-size:16px;font-family:Arial;color:#00233C'><b>Links:</b></p>\n", | ||
"<ul style = 'font-size:16px;font-family:Arial'>\n", | ||
" <li>Teradataml Python reference: <a href = 'https://docs.teradata.com/search/all?query=Python+Package+User+Guide&content-lang=en-US'>here</a></li>\n", | ||
" <li>GenseriesSinusoids function reference: <a href = 'https://docs.teradata.com/search/all?query=GenseriesSinusoids&content-lang=en-US'>here</a></li>\n", | ||
" \n", | ||
"</ul>" | ||
] | ||
}, | ||
{ | ||
"cell_type": "markdown", | ||
"id": "b2dcca28-5de5-44d7-88cb-45a12153b3f8", | ||
"metadata": {}, | ||
"source": [ | ||
"<footer style=\"padding-bottom:35px; background:#f9f9f9; border-bottom:3px solid #00233C\">\n", | ||
" <div style=\"float:left;margin-top:14px\">ClearScape Analytics™</div>\n", | ||
" <div style=\"float:right;\">\n", | ||
" <div style=\"float:left; margin-top:14px\">\n", | ||
" Copyright © Teradata Corporation - 2025. All Rights Reserved\n", | ||
" </div>\n", | ||
" </div>\n", | ||
"</footer>" | ||
] | ||
} | ||
], | ||
"metadata": { | ||
"kernelspec": { | ||
"display_name": "Python 3 (ipykernel)", | ||
"language": "python", | ||
"name": "python3" | ||
}, | ||
"language_info": { | ||
"codemirror_mode": { | ||
"name": "ipython", | ||
"version": 3 | ||
}, | ||
"file_extension": ".py", | ||
"mimetype": "text/x-python", | ||
"name": "python", | ||
"nbconvert_exporter": "python", | ||
"pygments_lexer": "ipython3", | ||
"version": "3.9.10" | ||
} | ||
}, | ||
"nbformat": 4, | ||
"nbformat_minor": 5 | ||
} |