Что такое визуализация данных и почему это важно?

Это большой вопрос, который волнует нас на этой неделе. Когда мы можем видеть данные и легко их понимать, зачем нам нужны методы визуализации? Итак, мы потратили целую неделю, чтобы понять его важность и то, как мы можем использовать инструменты визуализации для правильной визуализации данных. Поверьте, эта тема стоит потраченной недели. Я постараюсь кратко объяснить главный вопрос.

Все, что мы делаем, каждая мысль, о которой мы когда-либо думали, производится человеческим мозгом. Но то, как именно он работает, остается одной из самых больших нерешенных загадок, и кажется, что чем больше мы исследуем его секреты, тем больше сюрпризов мы находим. ~ Нил деГрасс Тайсон

Из-за того, как человеческий мозг обрабатывает информацию, использовать диаграммы или графики для визуализации больших объемов сложных данных проще, чем изучать электронные таблицы или отчеты. Визуализация данных - это быстрый и простой способ универсальной передачи концепций, и вы можете экспериментировать с различными сценариями, внося небольшие корректировки.

Я считаю, что визуализация данных - это искусство. Художники всегда пытаются объяснить загадки жизни в форме живописи или творчества. Так чем же специалисты по данным отличаются от них? Они пытаются объяснить данные в виде цифровых рисунков (графиков).

Как мы можем визуализировать данные?

Python сделал это настолько простым для нас - с двумя общими библиотеками для визуализации, известными как matplotlib и seaborn.

Matplotlib: Matplotlib - это библиотека для двухмерных графиков, которая помогает визуализировать фигуры. Matplotlib эмулирует Matlab как графики и визуализации. Matlab не бесплатен, сложен в масштабировании и как язык программирования утомителен. Итак, в Python используется matplotlib, поскольку это надежная, бесплатная и простая библиотека для визуализации данных.

Seaborn: Seaborn - это библиотека визуализации данных Python, основанная на matplotlib. Он предоставляет высокоуровневый интерфейс для рисования привлекательных и информативных статистических графиков.

Как это используется?

Прежде чем применять какую-либо технику визуализации, нам нужно заложить основу. Нам нужно выполнить несколько шагов.

  • Разберитесь в данных, которые мы пытаемся визуализировать.
  • Проверить уникальность значений данных в столбцах.
  • Поймите, что мы пытаемся визуализировать и какова наша конечная цель.
  • Постарайтесь сделать так, чтобы нашей аудитории было легче понять.
  • Используйте наглядный материал, который передает информацию в лучшей и простой форме для вашей аудитории.

Некоторые примеры визуализации данных

Одномерный анализ

Этот тип данных состоит только из одной переменной. Таким образом, анализ одномерных данных является самой простой формой анализа, поскольку информация касается только одной изменяющейся величины. Он не занимается причинами или взаимосвязями, и основная цель анализа - описать данные и найти закономерности, существующие в них.

  • Гистограмма:

СПРАВОЧНАЯ ИНФОРМАЦИЯ: https://statistics.laerd.com/statistical-guides/understanding-histograms.php

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

x = np.random.normal(size=100)

sns.distplot(x, kde=False)

  • Оценка плотности ядра (одномерный график размерности):

У нас есть два разных способа сделать KDE.

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
x = np.random.normal(size=100)
sns.distplot(x, hist=False)

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

x = np.random.normal(size=100)

sns.kdeplot(x, shade=True)

Двумерный анализ

Этот тип данных включает две разные переменные. Анализ этого типа данных имеет дело с причинами и взаимосвязями, а анализ проводится для выяснения взаимосвязи между двумя переменными.

  • Диаграмма рассеяния:

ССЫЛКА: http://mste.illinois.edu/courses/ci330ms/youtsey/scatterinfo.html

mean, cov = [0, 1], [(1, 0.5), (0.5, 1)]
data = np.random.multivariate_normal(mean, cov, 200)
df = pd.DataFrame(data, columns=['x', 'y'])
sns.jointplot(x = 'x', y = 'y', data ​= df)

  • График Hexbin:

ССЫЛКА: https://www.meccanismocomplesso.org/en/hexagonal-binning/

mean, cov = [0, 1], [(1, 0.5), (0.5, 1)]
data = np.random.multivariate_normal(mean, cov, 200)
df = pd.DataFrame(data, columns=['x', 'y'])

x, y = np.random.multivariate_normal(mean, cov, 1000).T
with sns.axes_style('white'):
    sns.jointplot(x = x, y = y, kind = 'hex', color = 'k')

Ну это все на этой неделе. Было весело изучать и исследовать что-то новое и анализировать множество данных. На следующей неделе я опубликую еще одно, с некоторыми новыми фактами и информацией.

СПАСИБО!