Excel: обзор
Microsoft Excel предоставляет встроенные функции для расчёта как выборочного, так и генерального стандартного отклонения. Эти функции доступны во всех современных версиях Excel.
Функции Excel
| Функция | Тип | Описание |
|---|---|---|
| `STDEV.S()` | Выборочное | Выборочное стандартное отклонение (делит на n-1) |
| `STDEV.P()` | Генеральное | Стандартное отклонение генеральной совокупности (делит на N) |
| `STDEV()` | Выборочное | Устаревшая функция, аналогична STDEV.S |
| `STDEVP()` | Генеральное | Устаревшая функция, аналогична STDEV.P |
Примеры в Excel
Excel Formulas
// Data in cells A1:A10
=STDEV.S(A1:A10) // Sample SD
=STDEV.P(A1:A10) // Population SD
// For specific values
=STDEV.S(4, 8, 6, 5, 3) // Returns 1.924
// Ignoring text and logical values
=STDEV.S(A1:A10) // Ignores text
=STDEVA(A1:A10) // Includes text as 0Совет
Для большинства реальных задач используйте STDEV.S. Функцию STDEV.P следует применять только при уверенности, что у вас есть полная генеральная совокупность.
Python: обзор
Python предлагает несколько способов расчёта стандартного отклонения. Наиболее распространённые библиотеки — NumPy, Pandas и встроенный модуль statistics.
Использование NumPy
Python (NumPy)
import numpy as np
data = [4, 8, 6, 5, 3]
# Population standard deviation (default)
pop_sd = np.std(data)
print(f"Population SD: {pop_sd}") # 1.720
# Sample standard deviation
sample_sd = np.std(data, ddof=1)
print(f"Sample SD: {sample_sd}") # 1.924Что такое ddof?
ddof расшифровывается как «Delta Degrees of Freedom» (дельта степеней свободы). Установка ddof=1 указывает NumPy делить на (n-1) для выборочного СО. По умолчанию ddof=0 даёт генеральное СО.
Использование Pandas
Python (Pandas)
import pandas as pd
# Create a DataFrame
df = pd.DataFrame({'scores': [85, 90, 78, 92, 88]})
# Sample SD (default in pandas)
sample_sd = df['scores'].std()
print(f"Sample SD: {sample_sd}")
# Population SD
pop_sd = df['scores'].std(ddof=0)
print(f"Population SD: {pop_sd}")
# Multiple columns at once
df.std() # Returns SD for all numeric columnsСравнительная таблица
| Инструмент | Выборочное СО | Генеральное СО |
|---|---|---|
| Excel | `STDEV.S()` | `STDEV.P()` |
| NumPy | `np.std(data, ddof=1)` | `np.std(data)` |
| Pandas | `df.std()` | `df.std(ddof=0)` |
| Python statistics | `stdev()` | `pstdev()` |