Applying a linear filter to a digital signal
Linear filters play a fundamental role in signal processing. With a linear filter, one can extract meaningful information from a digital signal.
In this recipe, we will show two examples using stock market data (the NASDAQ stock exchange). First, we will smooth out a very noisy signal with a low-pass filter to extract its slow variations. We will also apply a high-pass filter to the original time series to extract the fast variations. These are just two common examples among a wide variety of applications of linear filters.
How to do it...
Let's import the packages:
>>> import numpy as np import scipy as sp import scipy.signal as sg import pandas as pd import matplotlib.pyplot as plt %matplotlib inline
We load the NASDAQ data (obtained from https://finance.yahoo.com/quote/%5EIXIC/history?period1=631148400&period2=1510786800&interval=1d&filter=history&frequency=1d) with pandas:
>>> nasdaq_df = pd...