Skip to main content

Scalable time series processing

Project description

autotimeseries

Nixtla SDK. Time Series Forecasting pipeline at scale.

CI python sdk Python PyPi License

autotimeseries is a python SDK to consume the APIs developed in https://github.com/Nixtla/nixtla.

Install

PyPI

pip install autotimeseries

How to use

Check the following examples for a full pipeline:

Basic usage

import os

from autotimeseries.core import AutoTS

autotimeseries = AutoTS(bucket_name=os.environ['BUCKET_NAME'],
                        api_id=os.environ['API_ID'], 
                        api_key=os.environ['API_KEY'],
                        aws_access_key_id=os.environ['AWS_ACCESS_KEY_ID'], 
                        aws_secret_access_key=os.environ['AWS_SECRET_ACCESS_KEY'])

Upload dataset to S3

train_dir = '../data/m5/parquet/train'
# File with target variables
filename_target = autotimeseries.upload_to_s3(f'{train_dir}/target.parquet')
# File with static variables
filename_static = autotimeseries.upload_to_s3(f'{train_dir}/static.parquet')
# File with temporal variables
filename_temporal = autotimeseries.upload_to_s3(f'{train_dir}/temporal.parquet')

Each time series of the uploaded datasets is defined by the column item_id. Meanwhile the time column is defined by timestamp and the target column by demand. We need to pass this arguments to each call.

columns = dict(unique_id_column='item_id',
               ds_column='timestamp',
               y_column='demand')

Send the job to make forecasts

response_forecast = autotimeseries.tsforecast(filename_target=filename_target,
                                              freq='D',
                                              horizon=28, 
                                              filename_static=filename_static,
                                              filename_temporal=filename_temporal,
                                              objective='tweedie',
                                              metric='rmse',
                                              n_estimators=170,
                                              **columns)

Download forecasts

autotimeseries.download_from_s3(filename='forecasts_2021-10-12_19-04-32.csv', filename_output='../data/forecasts.csv')

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

autotimeseries-0.0.7.tar.gz (13.5 kB view details)

Uploaded Source

Built Distribution

autotimeseries-0.0.7-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

Details for the file autotimeseries-0.0.7.tar.gz.

File metadata

  • Download URL: autotimeseries-0.0.7.tar.gz
  • Upload date:
  • Size: 13.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.7.12

File hashes

Hashes for autotimeseries-0.0.7.tar.gz
Algorithm Hash digest
SHA256 8c30f61fd4b7b397320086904d8a35dd7c91f36f6cba0582a6fcfda568c38495
MD5 2e14a5b67d10c689ae1e2199a5f5f456
BLAKE2b-256 836ed8a01f71cdbcc0a3fcdc1fd041ba328251449c646710be270b26c111fe8f

See more details on using hashes here.

File details

Details for the file autotimeseries-0.0.7-py3-none-any.whl.

File metadata

  • Download URL: autotimeseries-0.0.7-py3-none-any.whl
  • Upload date:
  • Size: 10.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.7.12

File hashes

Hashes for autotimeseries-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 534ce9d62ef500265f5b3ab2a7a50306b420bcf122a982f2b62e73e6ea255fb8
MD5 36ac6683fe645f4e1a2a6b9cafdfa148
BLAKE2b-256 f365189bec84f24f5fa3511c55a257de46055eaf1da89f118da6d28772bad0da

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page