«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как я могу эффективно рассчитать скользящее стандартное отклонение для одномерного массива в Numpy без циклов?

Как я могу эффективно рассчитать скользящее стандартное отклонение для одномерного массива в Numpy без циклов?

Опубликовано 17 ноября 2024 г.
Просматривать:186

How can I efficiently calculate rolling standard deviation for a 1D array in Numpy without loops?

Реализация эффективного скользящего окна для одномерных массивов в Numpy

Концепция скользящего окна включает в себя итерацию по последовательности данных и применение вычислений к подмножествам данных в пределах указанной длины окна. В данном контексте задача состоит в том, чтобы вычислить скользящее стандартное отклонение одномерного массива в Numpy без использования циклов Python.

Хотя стандартное отклонение можно легко получить с помощью Numpy.std, часть скользящего окна представляет собой проблему испытание. Однако, используя функцию «rolling_window», представленную в сообщении в блоге, мы можем расширить ее функциональность на одномерные массивы.

Функция «rolling_window» создает представление входного массива, преобразованное в серию перекрывающихся окон. содействие эффективным вычислениям в этих окнах. Применяя нужную функцию, в данном случае Numpy.std, к каждому окну, мы получаем желаемый скользящий расчет.

Для иллюстрации рассмотрим следующий фрагмент кода:

import numpy as np

# Create a 1D array
observations = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])

# Specify window length
window_length = 3

# Calculate rolling windows
rolling_windows = rolling_window(observations, window_length)

# Calculate rolling standard deviations
rolling_stds = np.std(rolling_windows, axis=1)

# Print the results
print("Rolling standard deviations:", rolling_stds)

В этом примере "rolling_windows" представляют перекрывающиеся окна, а "rolling_stds" фиксирует рассчитанные скользящие стандартные отклонения. Используя функции Numpy для этих вычислений, мы достигаем эффективности и устраняем необходимость в циклах Python в вычислениях.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3