Similar presentations:
Визуализация данных (модуль 3, урок 5.)
1.
Модуль 3. Урок 5.Визуализация
данных
Ссылка на методичку
2.
Модуль 3. Урок 5. Визуализация данныхОбсуждение:
Использование
визуализации
3.
ОбсуждениеКакие этапы процесса анализа данных вы
выполнили на прошлом занятии?
4.
ОбсуждениеЭтапы процесса анализа данных, которые
уже выполнены
5.
?Обсуждение
Как можно визуализировать данные?
6.
К данным можноприменить:
➔ график
➔ диаграмма
➔ иллюстрация
➔ видео
➔ ментальная карта
Обсуждение
Популярные способы визуализации
7.
Для чего нужен этап визуализации?Обсуждение
Можно ли его пропустить?
8.
Какие данные легче воспринимать?Лето
6030
Весна
2261
Зима
1450
Осень
1099
2
Обсуждение
1
9.
ОбсуждениеВизуальная информация лучше
воспринимается и позволяет быстро и
эффективно донести основную мысль
до аудитории.
10.
Для нас это наиболее физиологичныйспособ восприятия информации.
Обсуждение
Многочисленные исследования
подтверждают, что 90% информации
человек получает посредством зрения.
11.
Модуль 3. Урок 5. Визуализация данныхНовая тема:
Визуализация данных в
Pandas
12.
Визуализацияданных
Построение графиков и диаграмм на
этапе визуализации — одна из
важнейших задач анализа данных.
13.
Визуализацияданных
Какие виды диаграмм существуют?
14.
➔ круговая;➔ линейная;
➔ столбчатая;
➔ гистограмма;
➔ «ящик с усами»;
➔ и многие другие...
Визуализация
данных
Виды диаграмм
15.
Визуализацияданных
Как построить диаграмму на Python?
16.
Визуализацияданных
Для построения диаграм мы будем
использовать метод plot() библиотеки
Pandas.
17.
Визуализацияданных
Matplotlib — это библиотека на языке
программирования Python, с помощью
которой мы будем отображать графики
на экране.
18.
Визуализацияданных
Из Matplotlib мы будем импортировать
модуль pyplot, для использования
метода show().
19.
import pandas as pdВизуализация
данных
import matplotlib.pyplot as plt
20.
➔ Метод применяется как к объектамSeries, так и к DataFrame.
➔ Метод строит диаграмму для
количественных данных.
Визуализация
данных
Метод plot()
21.
По умолчанию метод строит линейныйграфик
import pandas as pd
import matplotlib.pyplot as plt
index = [1, 2, 3, 4, 5])
s.plot()
plt.show()
Визуализация
данных
s = pd.Series(data = [10, 5, 15, 20, 10],
22.
Визуализацияданных
Для отображения каких данных можно
построить линейный график?
23.
➔ Линейный график используют длянаблюдения за изменениями какой-то
величины на протяжении
определённого периода.
Визуализация
данных
Линейный график
24.
Какую информацию о приложениях мыможем изобразить в виде линейного
графика?
Визуализация
данных
Вернёмся к датасету, который хранит
данные приложений из Google Play
Store.
25.
К данным нужно применять фильтрацию игруппировку.
Визуализация
данных
Без дополнительных действий данные
этого датасета нельзя
продемонстрировать в динамике.
26.
Всё будет зависеть от выдвинутыхвами гипотез.
Визуализация
данных
Но это не значит, что в ваших проектах
вы не сможете построить линейный
график!
27.
Вид диаграммы можно задать с помощьюпараметра kind.
Визуализация
данных
Метод plot() может строить диаграммы
разных видов.
28.
Визуализацияданных
Рассмотрим, какие значения может
принимать параметр kind, и какие
диаграммы будут построены в
зависимости от этих значений.
29.
➔hist;➔box;
➔scatter;
➔pie;
➔bar;
➔barh.
Визуализация
данных
Параметр kind задаёт тип диаграммы
30.
➔ Диаграмма демонстрирует распределениезначений конкретного признака между
минимальным и максимальным значениями.
➔ По умолчанию диапазон распределений
разбит на 10 интервалов.
➔ kind = 'hist'.
Визуализация
данных
Гистограмма
31.
Гистограмма размера приложенийКак изменить количество
столбцов?
Визуализация
данных
df['Size'].plot(kind = 'hist')
32.
Гистограмма размера приложенийВизуализация
данных
df['Size'].plot(kind = 'hist', bins = 5)
33.
Визуализацияданных
Для чего нужно изменять количество
столбцов?
34.
Визуализацияданных
Изменяя количество столбцов, можно
увидеть колебания значений
35.
Как оценить распределение значений вэтом случае?
Визуализация
данных
df[df['Type'] == 'Paid']['Price'].plot(kind = 'hist')
36.
Визуализацияданных
Данные, выделяющиеся среди общей
выборки значений, называют
выбросами.
37.
➔ Диаграмма, которая одновременноотображает медиану, нижний и верхний
квартили, минимальное и максимальное
значения и выбросы.
➔ kind = 'box'.
Визуализация
данных
«Ящик с усами»
38.
Диаграмма «Ящик с усами» для стоимостиприложений
Визуализация
данных
df[df['Type'] == 'Paid']['Price'].plot(kind = 'box')
39.
Структура диаграммыМаксимальное
значение
75-й процентиль
(третий квартиль)
Медиана
25-й процентиль
(первый квартиль)
Минимальное
значение
Визуализация
данных
Усы
40.
Структура диаграммыВизуализация
данных
Большая часть значений
расположена в ящике.
41.
Структура диаграммыВыбросы
Визуализация
данных
Если значение не характерно для ящика и не
попадает в него, то оно становится выбросом.
42.
Визуализацияданных
Наличие выбросов ― это хорошо,
плохо или нейтрально?
43.
➔ Выброс может появиться из-за ошибки вводаданных.
➔ Выброс искажает результаты статистических
расчётов, например, среднее
арифметическое.
➔ Наличие выбросов говорит о неоднородности
выборки и ставит под сомнение результаты
анализа данных.
Визуализация
данных
Опасности выбросов
44.
Что делать с выбросами?Визуализация
данных
➔ Проверить, были ли допущены ошибки
при вводе данных.
➔ Если обнаружены ошибки, исправить их.
45.
➔ Принять решение об удалении из набораданных строк, содержащих выбросы.
➔ Решение об удалении строк зависит от
цели исследования и количества данных.
Визуализация
данных
Что делать, если данные введены
некорректно?
46.
Кейс № 1. Мы ― команда разработчиковмобильных приложений
Условия работы: чтобы найти свою нишу на рынке,
важно иметь данные как о дорогих, так и о бюджетных
приложениях.
Вывод: строки с выбросами нужно оставить.
Визуализация
данных
Цель анализа данных: изучить особенности рынка,
целевую аудиторию, популярные жанры, цены,
частоту выпуска обновлений.
47.
Кейс № 2. Мы хотим разместить рекламу своихтоваров в приложениях
Условия работы: наши потенциальные потребители
пользуются только бюджетными приложениями.
Вывод: строки с выбросами нужно удалить.
Визуализация
данных
Цель анализа данных: выбрать подходящие
приложения для рекламной интеграции.
48.
Как визуально отразить связь междудвумя показателями?
Визуализация
данных
При выполнении анализа мы изучаем
связи между данными.
49.
➔ Диаграмма показывает степень связимежду переменными.
➔ kind = 'scatter'.
Визуализация
данных
Диаграмма рассеяния
50.
Пример диаграммы рассеянияВизуализация
данных
Как построить диаграмму этого вида?
51.
Построение диаграммы рассеяния2. Отметить на координатной плоскости точки,
координаты которых ― это значения
выбранных признаков.
Визуализация
данных
1. Выбрать два признака, связь между которыми
мы хотим визуализировать.
52.
3. Оценить расположение точек на графике:разбросаны ли они равномерно по
координатной плоскости, или собраны вокруг
воображаемой линии?
4. Если точки собраны вокруг воображаемой
линии, между величинами есть связь, в
противном случае — связи нет.
Визуализация
данных
Построение диаграммы рассеивания
53.
Визуализацияданных
Приведите пример гипотезы, которую
можно проверить при помощи
диаграммы рассеяния.
54.
Дорогие приложения имеют меньшееколичество установок по сравнению с
дешёвыми или бесплатными.
Визуализация
данных
Пример гипотезы
55.
Диаграмма рассеянияdf.plot(x = '<имя первого столбца>',
kind = 'scatter')
Визуализация
данных
y = '<имя второго столбца>',
56.
Диаграмма рассеянияВзаимосвязь величин
подтверждена.
Гипотеза верна
Визуализация
данных
df.plot(x = 'Price', y = 'Installs', kind = 'scatter')
57.
Визуализацияданных
Какие связи между величинами мы
можем увидеть на диаграмме?
58.
По силеВизуализация
данных
1. Сильная.
2. Слабая.
3. Отсутствует.
59.
По направленностиВизуализация
данных
1. Положительная.
2. Отрицательная.
3. Нулевая.
60.
По виду графикаВизуализация
данных
1. Линейная.
2. Нелинейная.
61.
➔ Диаграмма демонстрируетраспределение значений по
категориям. Наглядно отображает
пропорции и доли.
➔ kind = 'pie'.
Визуализация
данных
Круговая диаграмма
62.
Как построить круговую диаграмму длясезонов, если информация в этом столбце не
количественная?
Визуализация
данных
Предположим, в DataFrame есть столбец с
названием сезона, во время которого было
произведено последнее обновление.
63.
Шаг 2. Построить круговую диаграммуна основе полученной Series.
Визуализация
данных
Шаг 1. Посчитать количество
уникальных значений столбца при
помощи метода value_counts().
64.
Круговая диаграммаВизуализация
данных
df['Season'].value_counts().plot(kind = 'pie')
65.
Визуализацияданных
Какое количество долей диаграммы
удобно для восприятия?
66.
Визуализацияданных
Выбирайте 5–6 категорий, в противном случае
диаграмму сложно читать
67.
➔ Диаграмма помогает сравнивать значениядруг с другом.
➔ kind = 'bar'. Столбцы расположены
вертикально.
➔ kind = 'barh'. Столбцы расположены
горизонтально.
Визуализация
данных
Столбчатая диаграмма
68.
Визуализацияданных
Сравним количество приложений в
разных категориях при помощи
вертикальной столбчатой диаграммы.
69.
Столбчатая диаграммаПеречислите минусы
этой столбчатой
диаграммы
Визуализация
данных
df['Category'].value_counts().plot(kind = 'bar')
70.
Названия категорийнаписаны частично и
накладываются друг на
друга.
Визуализация
данных
Столбчатая диаграмма
71.
Добавим отступы между столбцамидиаграммы и подписями.
Визуализация
данных
Изменим тип диаграммы на
горизонтальную столбчатую.
72.
Параметр figsizefigsize = (8, 5)
Визуализация
данных
➔ Позволяет задать ширину и высоту
диаграммы.
➔ Если параметр не указан, то размер по
умолчанию (6.4, 4.8).
5
8
73.
Столбчатая диаграммаВизуализация
данных
df['Category'].value_counts().plot(kind = 'barh', figsize = (8, 5))
74.
Визуализацияданных
Чего не хватает на диаграмме, чтобы
было удобно определять значения
категорий?
75.
Координатная сеткаВизуализация
данных
df['Category'].value_counts().plot(kind = 'barh', figsize = (10, 10), grid = True)
76.
Визуализацияданных
Как можно сравнить, различается ли
среднее количество установок в
различных целевых аудиториях для
платных и бесплатных приложений?
77.
Сначала готовим данные,строим диаграммы
потом
d1 = df[df['Type'] == 'Free'].pivot_table(index = 'Content Rating',
columns = 'Type',
values = 'Installs',
d2 = df[df['Type'] == 'Paid'].pivot_table(index = 'Content Rating',
columns = 'Type',
values = 'Installs',
aggfunc = 'mean')
d1.plot(kind = 'barh')
d2.plot(kind = 'barh')
Визуализация
данных
aggfunc = 'mean')
78.
Две отдельные диаграммыВизуализация
данных
Удобно ли сравнивать значения?
79.
двух- Одинаковый цвет столбцов.
- Различная цена деления по оси абсцисс.
- Для платных приложений указаны не все
категории целевой аудитории.
Визуализация
данных
Минусы использования
отдельных диаграмм
80.
Сначала готовим данные,строим одну диаграмму
потом
d = df.pivot_table(index = 'Content Rating',
columns = 'Type',
aggfunc = 'mean')
Визуализация
данных
values = 'Installs',
81.
Две диаграммы в одной координатнойсетке
d.plot(kind = 'barh', subplots = True)
Визуализация
данных
Позволяет строить два
графика друг под другом
82.
Две диаграммы в одной координатнойсетке
Параметр layout позволяет задать расположение графиков.
➔ layout = (1, 2) — два в одну линию.
➔ layout = (2, 1) — в две линии по одному.
Визуализация
данных
d.plot(kind = 'barh', subplots = True, layout = (1, 2))
83.
Визуализацияданных
Удобно ли сравнивать значения?
84.
- Подписи значений по оси ординат второйдиаграммы накладываются на первую.
- Нет координатной сетки, чтобы точно
определить значения.
Визуализация
данных
Минусы диаграммы
85.
Параметр sharey позволяетне
дублировать надписи по оси ординат
Визуализация
данных
d.plot(kind = 'barh', subplots = True, layout = (1, 2), sharey = True, grid = True)
86.
Визуализацияданных
Возможно ли совместить эти два
графика?
87.
Совмещённая столбчатая диаграммаВизуализация
данных
➔ Диаграмма отражает отношение значений
двух и более параметров.
88.
Совмещённая столбчатая диаграммаВизуализация
данных
d.plot(kind = 'barh', grid = True)
89.
Модуль 3. Урок 5. Визуализация данныхРабота на платформе:
Визуализация данных
90.
Выполните практическое задание«Визуализация данных»
Работа
в VS Code
mars.algoritmika.org
91.
Перерыв92.
Модуль 3. Урок 5. Визуализация данныхОбсуждение:
Работа над индивидуальным
проектом
93.
ОбсуждениеЭтапы процесса анализа данных, которые
уже выполнены
94.
ОбсуждениеЧто необходимо сделать сегодня?
95.
ОбсуждениеГрафики и диаграммы строятся на
основе данных, полученных на этапе
«Исследование».
96.
Чек-листЗакончить этап «Исследование».
Результаты, полученные в ходе
выполнения этих двух этапов, на
следующем занятии необходимо будет
оформить в виде презентации.
Обсуждение
Выполнить этап «Визуализация».
97.
ОбсуждениеНе забывайте проводить ревизию чеклиста и ментальной карты, которые вы
создали на прошлом занятии.
98.
➔ В VSC не установлена библиотекаMatplotlib.
➔ Её необходимо будет установить
самостоятельно.
➔ На платформе есть задание с
инструкцией.
Обсуждение
Важно!
99.
Чек-листУстановить библиотеку Matplotlib в среду
разработки VSC.
Выполнить этап «Визуализация».
Обсуждение
Закончить этап «Исследование».
100.
Модуль 3. Урок 5. Визуализация данныхVSC: Работа над
индивидуальным проектом
101.
Выполните практическое задание«VSC: Индивидуальный проект по
теме “Анализ данных”»
Работа
в VS Code
mars.algoritmika.org
102.
Модуль 3. Урок 5. Визуализация данныхЗавершение
урока
103.
➔ Как ты оцениваешь работу, проведённуюсегодня?
➔ Завершил ли ты этап исследования?
➔ Гипотезы, выдвинутые на прошлом
занятии, подверглись изменениям?
➔ Диаграммы дополняют твоё
исследование?
➔ Что ты планируешь делать дальше?
Завершение
урока
Поделитесь мнением
1 мин
для каждого