Data Density Transform¶
The data density transform computes the ratio of valid values in a sliding window to the total number of values in the window. See NValidTransform
for more details on how valid values are computed. It can be coupled with the SlidingWindow
abstraction to compute the data density
feature of a time series. It can be defined as:
where \(N_{valid}\) is the number of valid values in a window \(W\) and \(N_{total}\) is the total number of values in \(W\).
Bases: Transform
Compute the data density of a signal window x
.
__call__(signal_window, where=lambda : not np.isnan(x))
¶
Compute the data density of the array x
.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
signal_window | ndarray | The signal window to find the data density of. | required |
where | Callable[[Union[int, float, int_, float_]], Union[bool, bool_]] | A function that takes a value and returns | lambda : not numpy.isnan(x) |
Returns:
Type | Description |
---|---|
Union[float_, int_] | A scalar value representing the data density of |
Examples¶
import numpy as np
import autonfeat as aft
# Random data
n_samples = 100
x = np.random.rand(n_samples)
# Create sliding window
ws = 10
ss = 10
window = aft.SlidingWindow(window_size=ws, step_size=ss)
# Create transform
tf = aft.DataDensityTransform()
# Get featurizer
featurizer = window.use(tf)
# Get features
features = featurizer(x)
# Print features
print(window)
print(tf)
print(features)
If you enjoy using AutonFeat
, please consider starring the repository ⭐️.