Как рассчитать стандартное отклонение списка в python
Вы можете использовать один из следующих трех методов для расчета стандартного отклонения списка в Python:
Способ 1: используйте библиотеку NumPy
import numpy as np #calculate standard deviation of list n.p. std ( my_list )
Способ 2: используйте библиотеку статистики
import statistics as stat #calculate standard deviation of list stat. stdev ( my_list )
Способ 3: используйте собственную формулу
#calculate standard deviation of list st. stdev ( my_list )
Следующие примеры показывают, как использовать каждый из этих методов на практике.
Метод 1: вычислить стандартное отклонение с помощью библиотеки NumPy
Следующий код показывает, как вычислить стандартное отклонение выборки и стандартное отклонение генеральной совокупности списка с помощью NumPy:
import numpy as np #define list my_list = [3, 5, 5, 6, 7, 8, 13, 14, 14, 17, 18] #calculate sample standard deviation of list n.p. std ( my_list, ddof= 1 ) 5.310367218940701 #calculate population standard deviation of list n.p. std ( my_list ) 5.063236478416116
Обратите внимание, что стандартное отклонение генеральной совокупности всегда будет меньше стандартного отклонения выборки для данного набора данных.
Метод 2: расчет стандартного отклонения с помощью библиотеки статистики
В следующем коде показано, как вычислить стандартное отклонение выборки и стандартное отклонение генеральной совокупности списка с помощью библиотеки статистики Python:
import statistics as stat #define list my_list = [3, 5, 5, 6, 7, 8, 13, 14, 14, 17, 18] #calculate sample standard deviation of list stat. stdev (my_list) 5.310367218940701 #calculate population standard deviation of list stat. pstdev (my_list) 5.063236478416116
Метод 3: расчет стандартного отклонения с использованием специальной формулы
В следующем коде показано, как вычислить стандартное отклонение выборки и стандартное отклонение совокупности списка без импорта библиотек Python:
#define list my_list = [3, 5, 5, 6, 7, 8, 13, 14, 14, 17, 18] #calculate sample standard deviation of list (sum((x-(sum(my_list) / len(my_list))) ** 2 for x in my_list) / (len(my_list)-1)) ** 0.5 5.310367218940701 #calculate population standard deviation of list (sum((x-(sum(my_list) / len(my_list))) ** 2 for x in my_list) / len(my_list)) ** 0.5 5.063236478416116
Обратите внимание, что все три метода вычислили одинаковые значения стандартного отклонения списка.
Дополнительные ресурсы
Как рассчитать стандартную ошибку среднего значения в Python
Как рассчитать среднеквадратическую ошибку (MSE) в Python