Python 3 LPSD algorithm
Overview
This repository contains a Python 3 implementation of the LPSD algorithm. The implementation is similiar to the LPSD implementation in the Matlab package LTPDA. The core of the algorithm can be run as Python 3 or as (faster) C code. Both deliver the same results. To run the C core the file ltpda_dft.c has to be compiled to a shared library.
Installation
Install directly with pip:
pip install lpsd
Usage
Fully working examples can be found in /doc/examples.
With a DataFrame
Recommended interface, direct usage of a DataFrame
import pandas as pd
from lpsd import lpsd
# read time series
data = pd.read_csv("time_series.csv.gz", index_col=0)
# select column and calculate
spectrum = lpsd(data["column"])
# plot PSD
spectrum["psd"].plot(logx=True, logy=True)
Using numpy arrays
Use the traditional method lpsd_trad, which uses simple numpy arrays.
References
- Improved spectrum estimation from digitized time series on a logarithmic frequency axis Authors: Michael Tröbs and Gerhard Heinzel
- Spectrum and spectral density estimation by the Discrete Fourier transform (DFT), including a comprehensive list of window functions and some new flat-top windows Authors: Gerhard Heinzel, Albrecht Rüdiger and Roland Schilling
- MATLAB Toolbox LTPDA Author: Martin Hewitson
Metadata
Release files for lpsd 1.0.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| lpsd-1.0.6.tar.gz | 115.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| lpsd-1.0.6-cp311-cp311-manylinux_2_36_x86_64.whl | CPython 3.11 | CPython 3.11 | Linux glibc 2.36+ x86-64 | Details |
Total release size: 231.6 kB
Release files / lpsd-1.0.6.tar.gz
| Download URL | lpsd-1.0.6.tar.gz |
|---|---|
| Size | 115.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6e52c5dbda6d08f553f8071fde1a0499a7277d02109ba0de73b55e33f1af700c
|
|
BLAKE2b-256 checksum How to use checksums |
586d0218bdc4e4cc57be016a7622499ef29858b5234698ae4509b16c3d1f991e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.3.2 CPython/3.11.2 Linux/6.14.0-33-generic
|
Release files / lpsd-1.0.6-cp311-cp311-manylinux_2_36_x86_64.whl
| Download URL | lpsd-1.0.6-cp311-cp311-manylinux_2_36_x86_64.whl |
|---|---|
| Size | 116.1 kB |
| Tags | CPython 3.11 Linux glibc 2.36+ x86-64 |
|
SHA-256 checksum How to use checksums |
df017049a7a65adac96d1a488ca0c6801da349c803fb9cb5a8d2ceeab58abd97
|
|
BLAKE2b-256 checksum How to use checksums |
180732ad5d65ce273bcfa50816666e9d162146d26fc2d9bd01b37d1da3331de9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.3.2 CPython/3.11.2 Linux/6.14.0-33-generic
|