РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
632 of 687 menu

Метод std

Метод std применяется к объекту Resampler, который создаётся методом resample у DataFrame или Series с индексом типа DatetimeIndex. Он вычисляет стандартное отклонение (выборочное) значений в каждой группе, образованной при передискретизации. Результатом является новый объект той же размерности, где каждому интервалу времени соответствует одно число - стандартное отклонение для этого периода.

Синтаксис

resampler.std([ddof])

Параметр ddof (число степеней свободы) необязателен. По умолчанию равен 1 (выборочное стандартное отклонение). Если передать 0, будет вычислено стандартное отклонение генеральной совокупности.

Пример

Создадим временной ряд с ежедневными данными и вычислим стандартное отклонение по недельным интервалам:

import pandas as pd import numpy as np dates = pd.date_range('2025-01-01', periods=14, freq='D') ser = pd.Series([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14], index=dates) res = ser.resample('W').std() print(res)

Результат выполнения кода:

2025-01-05 1.581139 2025-01-12 2.160247 2025-01-19 3.535534 Freq: W-SUN, dtype: float64

Пример

Теперь рассчитаем стандартное отклонение с параметром ddof=0 (для генеральной совокупности) для того же ряда по 3-дневным интервалам:

import pandas as pd import numpy as np dates = pd.date_range('2025-01-01', periods=9, freq='D') ser = pd.Series([2, 4, 6, 8, 10, 12, 14, 16, 18], index=dates) res = ser.resample('3D').std(ddof=0) print(res)

Результат выполнения кода:

2025-01-01 1.632993 2025-01-04 1.632993 2025-01-07 1.632993 Freq: 3D, dtype: float64

Пример

Применим метод std к DataFrame с несколькими столбцами и агрегацией по месяцам:

import pandas as pd import numpy as np dates = pd.date_range('2025-01-01', periods=12, freq='D') df = pd.DataFrame({ 'a': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12], 'b': [10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120] }, index=dates) res = df.resample('M').std() print(res)

Результат выполнения кода:

a b 2025-01-31 3.605551 36.055513

Смотрите также

  • метод mean,
    который вычисляет среднее значение для интервалов
  • метод var,
    который вычисляет дисперсию для интервалов
  • метод sum,
    который суммирует значения в интервалах
  • метод Resampler,
    который описывает объект передискретизации
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить