🔑 Как построить нормальное распределение в Python? 📊

Для построения нормального распределения в Python вы можете использовать библиотеку NumPy и Matplotlib.

Вот пример кода:

import numpy as np
import matplotlib.pyplot as plt

# Задайте параметры распределения
mu = 0  # среднее значение
sigma = 1  # стандартное отклонение

# Сгенерируйте случайные числа из нормального распределения
samples = np.random.normal(mu, sigma, 1000)

# Постройте гистограмму распределения
plt.hist(samples, bins=30, density=True, alpha=0.5)

# Постройте график плотности распределения
x = np.linspace(-5, 5, 100)
y = 1 / (sigma * np.sqrt(2 * np.pi)) * np.exp(-0.5 * ((x - mu) / sigma) ** 2)
plt.plot(x, y, color='red')

plt.xlabel('Значение')
plt.ylabel('Плотность')
plt.title('Нормальное распределение')

plt.show()

Детальный ответ

Как построить нормальное распределение в Python?

Нормальное распределение, также известное как распределение Гаусса, является одним из наиболее широко используемых и изучаемых распределений в статистике. Оно обладает следующими характеристиками:

  • Симметричность вокруг среднего значения
  • Значение среднего и медианы равно
  • Форма распределения в форме колокола
  • Стандартное отклонение определяет ширину колокола

В Python существует несколько способов построения нормального распределения. Ниже рассмотрим два основных подхода: использование модуля numpy и модуля scipy.

Использование модуля numpy

Модуль numpy предоставляет набор функций для работы с массивами и выполнения математических операций. Для построения нормального распределения воспользуемся функцией numpy.random.normal. Пример кода:


import numpy as np
import matplotlib.pyplot as plt

# Генерируем 1000 случайных чисел с нормальным распределением
mean = 0  # среднее значение
std = 1   # стандартное отклонение
size = 1000  # размер выборки
data = np.random.normal(mean, std, size)

# Строим гистограмму для визуализации распределения
plt.hist(data, bins=30, density=True, color='skyblue')

# Добавляем линию с нормальным распределением
x = np.linspace(-4, 4, 1000)
pdf = (1 / (std * np.sqrt(2 * np.pi))) * np.exp(-0.5 * ((x - mean) / std) ** 2)
plt.plot(x, pdf, color='red')

# Настраиваем оси и добавляем заголовок
plt.xlabel('Значение')
plt.ylabel('Плотность вероятности')
plt.title('Нормальное распределение')

# Отображаем график
plt.show()

В приведенном выше примере мы сначала генерируем 1000 случайных чисел с нормальным распределением, используя функцию numpy.random.normal. Затем строим гистограмму с помощью функции plt.hist и добавляем линию с настоящим нормальным распределением, используя уравнение плотности вероятности.

Использование модуля scipy

Модуль scipy содержит различные функции для выполнения научных и инженерных вычислений. Для построения нормального распределения воспользуемся функцией scipy.stats.norm. Пример кода:


import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import norm

# Генерируем 1000 случайных чисел с нормальным распределением
mean = 0     # среднее значение
std = 1      # стандартное отклонение
size = 1000  # размер выборки
data = norm.rvs(loc=mean, scale=std, size=size)

# Строим гистограмму для визуализации распределения
plt.hist(data, bins=30, density=True, color='skyblue')

# Добавляем линию с нормальным распределением
x = np.linspace(-4, 4, 1000)
pdf = norm.pdf(x, loc=mean, scale=std)
plt.plot(x, pdf, color='red')

# Настраиваем оси и добавляем заголовок
plt.xlabel('Значение')
plt.ylabel('Плотность вероятности')
plt.title('Нормальное распределение')

# Отображаем график
plt.show()

В данном примере мы также генерируем 1000 случайных чисел с нормальным распределением, используя функцию norm.rvs из модуля scipy.stats. Затем строим гистограмму и добавляем линию с использованием функции norm.pdf, которая вычисляет плотность вероятности для заданных значений.

В обоих примерах мы создаем график нормального распределения, который визуализирует форму и статистические характеристики распределения.

Теперь у вас есть инструменты для построения нормального распределения в Python. Используйте их для анализа данных и выполнения статистических расчетов в своих проектах.

Видео по теме

01-10 Эмпирическое распределение в python

Нормальное Распределение за 6 Минут

3.2 Стандартное нормальное распределение

Похожие статьи:

🐍 Как приручить питона: полезные советы для успешного обучения

🎨 Как нарисовать сердечко с помощью Python

Как передать функцию в функцию в Питоне: простой гайд с использованием эмодзи 😎

🔑 Как построить нормальное распределение в Python? 📊

🔥 Как сделать вывод в питоне без пробелов за несколько простых шагов!

🔢 Как создать рандомное число в Питоне? Узнайте простой способ!

🔧Как создать форму в питоне: детальное руководство для начинающих