Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Візуалізація Розподілів за Допомогою Гістограм | Розділ
Practice
Projects
Quizzes & Challenges
Вікторини
Challenges
/
Візуалізація Даних з Matplotlib

bookВізуалізація Розподілів за Допомогою Гістограм

Note
Визначення

Гістограми відображають частоту або ймовірнісний розподіл змінної за допомогою вертикальних бінів однакової ширини, які часто називають стовпчиками.

Модуль pyplot надає функцію hist для створення гістограм. Обов'язковим параметром є дані (x), які можуть бути масивом або послідовністю масивів. Якщо передано кілька масивів, кожен з них відображається різним кольором.

12345678910
import pandas as pd import matplotlib.pyplot as plt # Loading the dataset with the average yearly temperatures in Boston and Seattle url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) # Creating a histogram plt.hist(weather_df['Seattle']) plt.show()
copy

Інтервали та Висота

До Series було передано hist() із щорічними температурами Сіетла. За замовчуванням дані розбиваються на 10 рівних інтервалів між мінімальним і максимальним значеннями. Відображено лише 9 бінів, оскільки один інтервал не містить жодного значення.

Висота біна показує частоту — скільки точок даних потрапляє в кожен інтервал.

Кількість бінів

Необов’язковий параметр bins може бути цілим числом (кількість бінів), послідовністю меж або рядком. Зазвичай достатньо вказати кількість бінів.

Поширене правило для вибору кількості бінів — формула Стерджеса, яка базується на розмірі вибірки:

bins = 1 + int(np.log2(n))

де n — розмір набору даних.

Note
Дізнатися більше

Ви можете дослідити додаткові методи обчислення бінів тут.

12345678910
import pandas as pd import matplotlib.pyplot as plt import numpy as np url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) # Specifying the number of bins plt.hist(weather_df['Seattle'], bins=1 + int(np.log2(len(weather_df)))) plt.show()
copy

Кількість рядків у DataFrame становить 26 (розмір Series), тому підсумкова кількість бінів дорівнює 5.

Наближення ймовірнісної густини

Для наближення ймовірнісної густини встановіть density=True у hist(). Тоді висота кожного біна обчислюється як:

Height=mnw\text{Height} = \frac{m}{n \cdot w}

де:

  • nn — загальна кількість значень;
  • mm — кількість у біні;
  • ww — ширина біна.

Це забезпечує, що загальна площа гістограми дорівнює 1, що відповідає поведінці PDF.

12345678910
import pandas as pd import matplotlib.pyplot as plt import numpy as np url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) # Making a histogram a probability density function approximation plt.hist(weather_df['Seattle'], bins=1 + int(np.log2(len(weather_df))), density=True) plt.show()
copy

Це забезпечує апроксимацію функції щільності ймовірності для температурних даних.

Note
Додаткове вивчення

Якщо бажаєте дізнатися більше про параметри hist(), зверніться до hist() документації.

Завдання

Swipe to start coding

Створення апроксимації функції щільності ймовірності за допомогою вибірки зі стандартного нормального розподілу:

  1. Використання відповідної функції для побудови гістограми.
  2. Використання normal_sample як даних для гістограми.
  3. Вказання кількості бінів як другого аргументу за формулою Стерджеса.
  4. Перетворення гістограми на апроксимацію функції щільності ймовірності шляхом правильного задання крайнього правого аргументу.

Рішення

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 1. Розділ 15
single

single

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

close

bookВізуалізація Розподілів за Допомогою Гістограм

Свайпніть щоб показати меню

Note
Визначення

Гістограми відображають частоту або ймовірнісний розподіл змінної за допомогою вертикальних бінів однакової ширини, які часто називають стовпчиками.

Модуль pyplot надає функцію hist для створення гістограм. Обов'язковим параметром є дані (x), які можуть бути масивом або послідовністю масивів. Якщо передано кілька масивів, кожен з них відображається різним кольором.

12345678910
import pandas as pd import matplotlib.pyplot as plt # Loading the dataset with the average yearly temperatures in Boston and Seattle url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) # Creating a histogram plt.hist(weather_df['Seattle']) plt.show()
copy

Інтервали та Висота

До Series було передано hist() із щорічними температурами Сіетла. За замовчуванням дані розбиваються на 10 рівних інтервалів між мінімальним і максимальним значеннями. Відображено лише 9 бінів, оскільки один інтервал не містить жодного значення.

Висота біна показує частоту — скільки точок даних потрапляє в кожен інтервал.

Кількість бінів

Необов’язковий параметр bins може бути цілим числом (кількість бінів), послідовністю меж або рядком. Зазвичай достатньо вказати кількість бінів.

Поширене правило для вибору кількості бінів — формула Стерджеса, яка базується на розмірі вибірки:

bins = 1 + int(np.log2(n))

де n — розмір набору даних.

Note
Дізнатися більше

Ви можете дослідити додаткові методи обчислення бінів тут.

12345678910
import pandas as pd import matplotlib.pyplot as plt import numpy as np url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) # Specifying the number of bins plt.hist(weather_df['Seattle'], bins=1 + int(np.log2(len(weather_df)))) plt.show()
copy

Кількість рядків у DataFrame становить 26 (розмір Series), тому підсумкова кількість бінів дорівнює 5.

Наближення ймовірнісної густини

Для наближення ймовірнісної густини встановіть density=True у hist(). Тоді висота кожного біна обчислюється як:

Height=mnw\text{Height} = \frac{m}{n \cdot w}

де:

  • nn — загальна кількість значень;
  • mm — кількість у біні;
  • ww — ширина біна.

Це забезпечує, що загальна площа гістограми дорівнює 1, що відповідає поведінці PDF.

12345678910
import pandas as pd import matplotlib.pyplot as plt import numpy as np url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) # Making a histogram a probability density function approximation plt.hist(weather_df['Seattle'], bins=1 + int(np.log2(len(weather_df))), density=True) plt.show()
copy

Це забезпечує апроксимацію функції щільності ймовірності для температурних даних.

Note
Додаткове вивчення

Якщо бажаєте дізнатися більше про параметри hist(), зверніться до hist() документації.

Завдання

Swipe to start coding

Створення апроксимації функції щільності ймовірності за допомогою вибірки зі стандартного нормального розподілу:

  1. Використання відповідної функції для побудови гістограми.
  2. Використання normal_sample як даних для гістограми.
  3. Вказання кількості бінів як другого аргументу за формулою Стерджеса.
  4. Перетворення гістограми на апроксимацію функції щільності ймовірності шляхом правильного задання крайнього правого аргументу.

Рішення

Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 1. Розділ 15
single

single

some-alt