Визуализация отсутствующих данных в RW/GGMICE

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

«Что мне делать с пропущенными значениями?» Это важный вопрос, который следует задавать при анализе данных. Мы все надеемся, что их легко найти, поскольку они закодированы как нули или NA.

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

Есть много способов сделать это, но мы собираемся использовать визуализацию отсутствующих данных в R в качестве первого исследовательского старта.

Оглавление

Когда удалять и когда находить пропущенные значения

Если нет закономерности в том, как они отсутствуют, и это влияет менее чем на 5% наблюдений, независимо от того, находятся ли они в столбце или наборе данных, вы можете удалить эти пропущенные значения.

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

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

Визуализация отсутствующих данных в RW/GGMICE

В этой демонстрации мы будем использовать пакет, который вменит недостающие значения. Это новый пакет для визуализации отсутствующих данных в R, он называется ggmice .

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

MICE означает многомерное вменение цепными методами . Мы не вдаемся в механику, но узнаем, как этот алгоритм будет вменять наши данные, если мы его используем.

Еще одна вещь, которую нужно знать о визуализации отсутствующих данных в R с помощью ggmice, заключается в том, что на самом деле он должен быть совместим с ggplot2 , поэтому мы можем создавать некоторые визуализации на основе ggplot2 , известного пакета визуализации. 

Визуализация отсутствующих данных в RW/GGMICE

Шаги по визуализации отсутствующих данных в R с GGMICE

Давайте продолжим и загрузим RStudio . Первое, что нам нужно сделать, это импортировать все необходимые нам пакеты, введя наборы данных library (ggmice) , library (tidyverse) , которая включает ggplot2, и library (Ecdat) .

Пакет библиотеки (Ecdat) содержит много хороших наборов данных для практики. Вот почему мы используем и импортируем его.

Визуализация отсутствующих данных в RW/GGMICE

Одним из наборов данных является help (MCAS) . Давайте запустим функцию справки.

Как мы видим, это из Ecdat, и это набор данных тестовых результатов. Эта справочная документация описывает каждый из столбцов и сообщает нам, откуда они взялись.

Мы собираемся использовать это, чтобы узнать, есть ли недостающие данные и какой шаблон они образуют, если они есть.

Визуализация отсутствующих данных в RW/GGMICE

Используем is.na (MCAS) и нажимаем Run . Как мы видим, есть куча ИСТИННЫХ и ЛОЖНЫХ. Что мы можем сделать, так это суммировать их, используя функцию colSums (is.na(MCAS)) , потому что FALSE и TRUE равны нулю и замаскированной единице. Это наш способ проверить, отсутствует значение или нет.

Визуализация отсутствующих данных в RW/GGMICE

Как показано ниже, пропущенные значения находятся в трех столбцах, таких как spc , totsc8 и avgsalary . Мы можем увидеть описание этих столбцов в разделе справочной документации.

Визуализация отсутствующих данных в RW/GGMICE

Кроме того, при использовании colSums (is.na(MCAS)) / nrow (MCAS) количество строк преобразуется в проценты. Это один из способов взглянуть на это, но не самый простой.

Визуализация отсутствующих данных в RW/GGMICE

В таком случае давайте посмотрим, что может сделать для нас ggmice. Мы воспользуемся функциейBrowseVignettes (package = 'ggmice') , а затем нажмем Run .

Визуализация отсутствующих данных в RW/GGMICE

Для этой функции найдено несколько виньеток, поэтому давайте выберем ggmice и щелкнем ссылку HTML , чтобы просмотреть полезные руководства, которые могут помочь.

Визуализация отсутствующих данных в RW/GGMICE

Визуализация отсутствующих данных в RW/GGMICE

Возвращаясь к сценарию, давайте воспользуемся функцией plot_pattern (MCAS) для передачи набора данных.

Визуализация отсутствующих данных в RW/GGMICE

Для того, чтобы визуализировать его лучше, нажмите кнопку Масштаб . Как показано, из 155 наблюдений spc имеет 9 отсутствующих значений, 25 для avgsalary и 40 для totsc8 .

Мы попытаемся выяснить, совпадают ли какие-либо из них, сколько их и имеют ли они склонность к кластеру.

Визуализация отсутствующих данных в RW/GGMICE

Чтобы перепроверить это, мы можем попробовать аналоговый способ, используя функцию просмотра (MCAS) , а затем нажав «Выполнить» .

Визуализация отсутствующих данных в RW/GGMICE

Это своего рода средство просмотра электронных таблиц, где мы можем увидеть все пропущенные значения. Мы также можем расширить это, нажав кнопку Source Editor .

Визуализация отсутствующих данных в RW/GGMICE

Как и в Power Query , мы можем видеть общее количество записей, а NA — это отсутствующие значения. Примечательно, что общее количество записей в представлении (MCAS) составляет 220, и только 155 для plot_pattern (MCAS), потому что, вероятно, были полные значения, которые не были нанесены на график как таковые.

Кроме того, мы видим, что они имеют тенденцию группироваться вместе на основе переменных и строк. Однако во многих случаях отсутствует только одно или другое. Реальность такова, что визуализировать последовательно ряд за рядом сложно, так что здесь на помощь приходит визуализация.

Визуализация отсутствующих данных в RW/GGMICE

Вменение недостающих данных

Следующее, что нужно сделать, это вернуться к нашему сценарию, затем ввести nrow (MCAS) и затем sum(is.na(MCAS)$totsc8)) .

В этом случае мы знаем, что 40 пропущенных значений из 200 наблюдений. Давайте используем R в качестве калькулятора, поставив 40/200. Таким образом, у нас есть около 20% пропущенных значений, что очень много.

В идеале мы хотим знать, почему так много пропало. Может быть, это просто то, как были собраны данные, поэтому мы можем это приписать.

Визуализация отсутствующих данных в RW/GGMICE

Для этого импортируем библиотеку (мыши) package . Это один из методов вменения.

Визуализация отсутствующих данных в RW/GGMICE

Затем воспользуемся функциями MCAS_pred < –="" quickpred=""> и plot_pred(MCAS_pred) . Обязательно сохраните их, нажмите «Выполнить» и нажмите кнопку «Масштаб» .

Визуализация отсутствующих данных в RW/GGMICE

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

Например, столбцы spc . Это будет полезно для прогнозирования пропущенных значений с помощью totsc8 и avgsalary . На данный момент мы этого не делаем, но мы видим, какие значения и переменные связаны, что может помочь воспрепятствовать этим значениям.

Визуализация отсутствующих данных в RW/GGMICE

Давайте попробуем еще одну вещь. Мы собираемся использовать ggmice (MCAS, aes(x=avgsalary, y=totsc8)) + geom_point() , затем нажмите Run .

Это точечная диаграмма , за исключением того, что мы используем ggmice. По сути, идея в том, что мы можем увидеть взаимосвязь между этими двумя переменными, у которых довольно много пропущенных значений. Когда один из них отсутствует, а другой доступен, мы можем видеть, где находятся эти точки.

В данной ситуации и то, и другое наблюдается в одном из этих случаев. Одного не хватает, а другого нет. Если оба отсутствуют, этого не будет в сюжете.

Визуализация отсутствующих данных в RW/GGMICE


Редактирование данных в R с помощью пакета DataEditR
Рекомендации Power Query для вашей модели данных
Как установить пакеты R в LuckyTemplates

Заключение

Когда мы работаем с пропущенными значениями, заманчиво использовать такой алгоритм, как MICE, потому что он очень эффективен для вменения значений. Однако лучше изучить данные самостоятельно и понять, что происходит.

В идеале, если у нас есть много недостающих данных, мы хотим выяснить, почему, и, возможно, мы можем попытаться получить еще какие-то данные или мы можем их вменить. Всегда предпочтительнее идти прямо к источнику.

Если мы в конечном итоге захотим вменить пропущенные значения, мы можем использовать некоторые простые методы вменения с пакетом tidyverse, такие как среднее или медиана.

Без сомнения, пакет MICE является мощным. Это может быть излишним для вещей, которые очень требовательны к вычислительным ресурсам, но сейчас мы сосредоточены только на элементе визуализации.

Я надеюсь, что вы узнали что-то новое и не стесняетесь использовать этот пакет. Обязательно поделитесь им и постарайтесь рассказать всем, потому что это хороший пакет для работы с отсутствующими значениями, совместимыми с ggplot2.

Всего наилучшего,

Джордж

Leave a Comment

Расчет недельных продаж с помощью DAX в LuckyTemplates

Расчет недельных продаж с помощью DAX в LuckyTemplates

В этом руководстве показано, как в конечном итоге можно рассчитать разницу между еженедельными результатами продаж с помощью DAX в LuckyTemplates.

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Как сохранить и загрузить файл RDS в R

Как сохранить и загрузить файл RDS в R

Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

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

Введение в фильтрацию контекста в LuckyTemplates

Введение в фильтрацию контекста в LuckyTemplates

В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.

Идеи материализации кэшей данных в DAX Studio

Идеи материализации кэшей данных в DAX Studio

В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.

Бизнес-отчетность с использованием LuckyTemplates

Бизнес-отчетность с использованием LuckyTemplates

Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.