Skip to main content

Python package to perform feature engineering using wavelet transforms, geared towards those who work with tabular data and machine learning models to forecast time series.

Project description

Shows a black logo in light color mode and a white one in dark color mode.

pywddff

Python package to perform feature engineering using wavelet transforms, geared towards those who work with tabular data and machine learning models to forecast time series.

Documentation

You can find the documentation for pywddff including API references here.

About the name

pywddff stands for "Python Wavelet Data Driven Forecasting Framework". WDDFF is an approach to combining wavelet transform generated features and machine learning for forecasting time series. The WDDFF paper can be found here.

Installation

This package is not yet listed on the Python Package Index (PyPI). You can use poetry install to install pywddff by first cloning this repository and then running poetry install from the root directory. Please note that you must have poetry already installed and available from your terminal. See here for instructions on installing poetry on your system.

$ git clone https://github.com/johnswyou/pywddff.git
$ cd pywddff
$ poetry install

Update (June 6, 2023): You can now pip install

$ pip install pywddff

Available wavelet/scaling filters

pywddff gives access to 128 (decomposition level 1) wavelet (high pass) and scaling (low pass) filters.

The following are short names for the available filters:

['bl7', 'bl9', 'bl10', 
'beyl', 
'coif1', 'coif2', 'coif3', 'coif4', 'coif5', 
'db1', 'db2', 'db3', 'db4', 'db5', 'db6', 'db7', 'db8', 'db9', 'db10', 'db11', 'db12', 
'db13', 'db14', 'db15', 'db16', 'db17', 'db18', 'db19', 'db20', 'db21', 'db22', 'db23', 
'db24', 'db25', 'db26', 'db27', 'db28', 'db29', 'db30', 'db31', 'db32', 'db33', 
'db34', 'db35', 'db36', 'db37', 'db38', 'db39', 'db40', 'db41', 'db42', 'db43', 'db44', 'db45', 
'fk4', 'fk6', 'fk8', 'fk14', 'fk18', 'fk22', 
'han2_3', 'han3_3', 'han4_5', 'han5_5', 
'dmey', 
'mb4_2', 'mb8_2', 'mb8_3', 'mb8_4', 'mb10_3', 'mb12_3', 'mb14_3', 'mb16_3', 'mb18_3', 'mb24_3', 'mb32_3', 
'sym2', 'sym3', 'sym4', 'sym5', 'sym6', 'sym7', 'sym8', 'sym9', 'sym10', 'sym11', 'sym12', 'sym13', 'sym14', 
'sym15', 'sym16', 'sym17', 'sym18', 'sym19', 'sym20', 'sym21', 'sym22', 'sym23', 'sym24', 'sym25', 'sym26', 'sym27', 
'sym28', 'sym29', 'sym30', 'sym31', 'sym32', 'sym33', 'sym34', 'sym35', 'sym36', 'sym37', 'sym38', 'sym39', 'sym40', 
'sym41', 'sym42', 'sym43', 'sym44', 'sym45', 
'vaid', 
'la8', 'la10', 'la12', 'la14', 'la16', 'la18', 'la20']

where

  • bl corresponds to "Best-localized Daubechies"
  • beyl corresponds to "Beylkin"
  • coif corresponds to "Coiflets"
  • db corresponds to "Daubechies"
  • fk corresponds to "Fejér-Korovkin"
  • han corresponds to "Han linear-phase moments"
  • dmey corresponds to "Discrete Meyer"
  • mb corresponds to "Morris minimum-bandwidth"
  • sym corresponds to "Symlets"
  • vaid corresponds to "Vaidyanathan"
  • la corresponds to "Least asymmetric"

NOTE: The db1 is the Haar wavelet.

Source of data

The wfilters function from MATALB R2022b's wavelet toolbox provided 121 of the 128 wavelet (scaling) filters available. The R package wavelets provided the remaining 7 least asymmetric wavelet (scaling) filters.

Contributing

Interested in contributing? Check out the contributing guidelines. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.

License

pywddff was created by John You. It is licensed under the terms of the MIT license.

Credits

pywddff was created with cookiecutter and the py-pkgs-cookiecutter template.

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

pywddff-0.1.0.tar.gz (5.9 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pywddff-0.1.0-py3-none-any.whl (6.1 MB view details)

Uploaded Python 3

File details

Details for the file pywddff-0.1.0.tar.gz.

File metadata

  • Download URL: pywddff-0.1.0.tar.gz
  • Upload date:
  • Size: 5.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.0 CPython/3.10.6 Windows/10

File hashes

Hashes for pywddff-0.1.0.tar.gz
Algorithm Hash digest
SHA256 8009f260f0aa53d8815efcef4cc1fb811f19f3c39ecd677d3f8b590eb7fbe94c
MD5 884c800bf136ca17f05c7bd5ec1075cb
BLAKE2b-256 fc3bf7618dcad4a7f022cba2926b7a9cee1bec5d672b34ffe276c5d42334a373

See more details on using hashes here.

File details

Details for the file pywddff-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pywddff-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.0 CPython/3.10.6 Windows/10

File hashes

Hashes for pywddff-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e9e8719563064f89ffcc68bc4f0bbb8b42cc6281e9fc75864c7d507dec634a1e
MD5 e4936d008f3e355b1d3da319c57365ad
BLAKE2b-256 022515aaefc12423213e9680ab91c42b6b93be1025cef3b14256df2768cf36f8

See more details on using hashes here.

Supported by

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