Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
Тепловые карты: визуализация корреляций и недостающих значений
При любых исследованиях данные с большой вероятностью будут неполными из-за пропущенных вопросов, барахлящего оборудования или ошибок, допущенных при вводе данных. В R пропущенные данные обозначаются символом NA (not available – нет в наличии). Недопустимые значения (например, деление на 0) обозначаются как NaN (not a number – не является числом). В отличие от таких программ, как SAS, в R используется одно и то же обозначение для пропущенных значений в текстовых и числовых данных. В R есть несколько функций, предназначенных для выявления пропущенных значений. Функция is. na() позволяет проверить данные на наличие пропущенных значений.
Тепловая карта представляет собой графическое отображение числовых данных, в котором цвет используется для обозначения значений. В контексте интеллектуального анализа данных тепловые карты особенно полезны для двух целей: для визуализации таблиц корреляции и визуализация отсутствующих значений в данных. В обоих случаях информация передается в двумерной таблице. Таблица корреляции для p переменных имеет p строк и p столбцов. Таблица данных содержит p столбцов (переменных) и n строк (наблюдений). Если количество строк велико, то можно использовать подмножество. Тепловые карты полезны при рассмотрении большого количества значений, но они не являются заменой для более точного графического отображения, как гистограммы, поскольку цветовые различия не могут быть восприняты точно.
Тепловая карта. Визуализация корреляций.
Значения, которые темнее, обозначают более сильную корреляцию.
|
Код:
## простая тепловая карта корреляций (без значений)
heatmap(cor(housing. df), Rowv = NA, Colv = NA)
##тепловая карта с значениями
library(gplots)
heatmap.2(cor(housing. df), Rowv = FALSE, Colv = FALSE, dendrogram = "none",
cellnote = round(cor(housing. df),2),
notecol = "black", key = FALSE, trace = 'none', margins = c(10,10))
# альтернативный график с ggplot
library(ggplot2)
library(reshape) # to generate input for the plot
cor. mat <- round(cor(housing. df),2) # rounded correlation matrix
melted. cor. mat <- melt(cor. mat)
ggplot(melted. cor. mat, aes(x = X1, y = X2, fill = value)) +
geom_tile() +
geom_text(aes(x = X1, y = X2, label = value))
Тепловая карта пропущенных значений. Черные ячейки обозначают пропущенные значения.
|
Код:
# замените dataFrame вашими данными.
# is. na () возвращает логический (TRUE / FALSE) вывод, указывающий местоположение отсутствующего значения
# значения.
# умножая логическое значение на 1, преобразует вывод в двоичный код (0/1).
heatmap(1 * is. na(dataFrame), Rowv = NA, Colv = NA)
Используется двоичное кодирование исходного набора данных, где 1 обозначает отсутствующее значение и 0 в противном случае. Эта новая бинарная таблица затем окрашивается таким образом, что только отсутствующие ячейки значений (со значением 1) окрашены. На рисунке показан пример тепловой карты для недостающих значений для набора данных с более чем 1000 столбцами. Данные включают экономическую, социальную, политическую информацию в разных странах мира (каждая строка является страной). Переменные были объединены из нескольких источников, и не каждая исходная информация была доступна по каждой стране. Карта данных помогает визуализировать уровень и количество «недостатков» в объединенном файле данных. Некоторые шаблоны «недостатка» легко появляются: переменные, которые отсутствуют почти для всех наблюдений, а также кластеры строк (стран), которые не имеют большого количества значений. Также видны переменные с небольшим отсутствием. Затем эту информацию можно использовать для определения того, как обрабатывать пропущенность (например, удаление некоторых переменных, удаление некоторых записей или другие методы).




