首页  >  文章  >  后端开发  >  如何使用滚动窗口计算 1D NumPy 数组的滚动标准差?

如何使用滚动窗口计算 1D NumPy 数组的滚动标准差?

Patricia Arquette
Patricia Arquette原创
2024-10-28 12:33:01599浏览

How Can I Calculate Rolling Standard Deviation on a 1D NumPy Array Using a Rolling Window?

NumPy 中一维数组的滚动窗口实现

为了有效处理一维数组上的滚动窗口,NumPy 提供了一个有用的实现。让我们考虑一个场景,其中我们有一个称为观察值的一维 NumPy 数组。要计算窗口长度为 n 的滚动标准差,我们可以利用以下方法:

<code class="python">import numpy as np

n = 5  # Example window length

# Create a rolling window for the observations
rolling_window = np.lib.stride_tricks.as_strided(observations, shape=(len(observations) - n + 1, n), strides=(observations.strides[0],))

# Apply the standard deviation function to each window
rolling_stdev = np.std(rolling_window, axis=1)</code>

此代码片段有效地将 NumPy std 函数应用于每个窗口,从而产生所需的滚动标准差值。请注意,您可以将 np.std 替换为您希望应用于窗口数据的任何其他函数。

以上是如何使用滚动窗口计算 1D NumPy 数组的滚动标准差?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn