Решено: начертайте n числа от нормалното разпределение

Последна актуализация: 09/11/2023

В днешния свят данните играят важна роля в процеса на вземане на решения и разбирането им е от решаващо значение за всеки бизнес. Анализът на данните включва различни техники, една от които е изобразяване на числа от нормално разпределение. Нормалното разпределение е общо разпределение на вероятностите, известно още като разпределение на Гаус или камбановидна крива. В тази статия ще проучим проблема с изобразяването на произволни числа от нормално разпределение с помощта на Python, ще разберем включените библиотеки и ще анализираме кода, за да разберем всяка стъпка.

Библиотеки и функции за нормално разпространение

Python предлага няколко библиотеки, които могат да ни помогнат при генерирането и начертаването на числа от нормално разпределение. Две от най-широко използваните библиотеки за тази цел са NumPy и Matplotlib.

numpy е мощна библиотека за работа с масиви и извършване на различни числени изчисления. Ще го използваме за генериране на произволни числа от нормално разпределение. Някои важни функции в NumPy за нашия проблем включват np.random.normal() и np.linspace().

Матплотлиб е библиотека за създаване на статични, интерактивни и анимирани визуализации в Python. Ще го използваме, за да визуализираме нормалното разпределение на генерираните произволни числа. Основната функция, която ще използваме от тази библиотека, е plt.hist().

Сега нека се задълбочим в решението за начертаване на тези произволни числа и да разберем кода стъпка по стъпка.

Решение: График на числа от нормално разпределение

За да покажем решението, ще използваме следния код на Python:

import numpy as np
import matplotlib.pyplot as plt

mu = 0
sigma = 1
n = 1000

samples = np.random.normal(mu, sigma, n)
x = np.linspace(mu - 3 * sigma, mu + 3 * sigma, 100)

plt.hist(samples, bins=x, density=True, alpha=0.6, color='g')
plt.xlabel('Random Numbers')
plt.ylabel('Frequency')
plt.title('Plotting Numbers from a Normal Distribution')

plt.show()

Сега нека разбием кода и да го разберем в детайли.

1. Започваме с импортиране на необходимите библиотеки: NumPy и Matplotlib.

2. Задаваме необходимите параметри за генериране на произволни числа. Тук, mu представлява средната стойност, сигма представлява стандартното отклонение и n представлява броя на произволните числа, които искаме да генерираме.

3. Ние генерираме произволните числа с помощта на функцията np.random.normal(), като предоставяме средната стойност, стандартното отклонение и броя на произволните числа.

4. Създаваме linspace с помощта на np.linspace() за стойности, вариращи от mu-3*sigma до mu+3*sigma, което представлява диапазона за оста x, покриващ приблизително 99.7% от точките с данни.

5. Използваме функцията plt.hist() от Matplotlib, за да начертаем хистограмата. Ние определяме контейнерите, като предоставяме създаденото от нас linspace и задаваме плътността на true за нормализиране. Алфа параметърът е зададен на 0.6 за прозрачност и цвят на 'g' за зелено.

6. Задаваме етикета на оста x, етикета на оста y и заглавието на хистограмата, използвайки съответно функциите plt.xlabel(), plt.ylabel() и plt.title().

7. Накрая показваме хистограмата с помощта на plt.show().

Разбиране на функцията np.random.normal().

Функцията np.random.normal() е многофункционална функция в библиотеката NumPy. Позволява ни да генерираме произволни проби от нормално (гаусово) разпределение. Функцията приема три аргумента:

– loc (float): Средна стойност („център“) на разпределението.
– мащаб (float): стандартно отклонение (разпространение или „ширина“) на разпределението.
– размер (int или tuple of ints): Форма на изхода, която определя броя произволни числа за генериране.

С помощта на тази функция можем лесно да генерираме произволни числа и да ги начертаем с помощта на хистограма, както е показано в горния код.

В заключение, Python, заедно със своите мощни библиотеки като NumPy и Matplotlib, прави начертаването на числа от нормално разпределение лесна задача. Разбирането на тези библиотеки и техните функции е от съществено значение за обработката на данни и ефективното им визуализиране. С няколко реда код можем да генерираме произволни числа и да визуализираме тяхното разпределение, което прави Python отличен избор за статистически анализ и визуализация на данни.

Подобни публикации:

Оставете коментар