#r #correlation #r-corrplot
#r #корреляция #r-corrplot
Вопрос:
У меня есть набор данных, который содержит несколько разных переменных, каждая из которых имеет собственное подмножество групп. У меня также есть целевая переменная. Я хочу установить, какие группы коррелируют с ответом, и мне удалось создать серию корреляционных матриц для каждой переменной и ответа, а также соответствующие корреляционные графики с использованием функции cor и функции corrplot соответственно в R.
Для целей того, что я делаю, меня не интересует, коррелируют ли переменные друг с другом, меня просто интересует, коррелируют ли они с переменной ответа. Есть ли способ фильтрации корреляционной матрицы перед построением графика, чтобы включать переменные только в целевую переменную
Комментарии:
1. Пожалуйста, не могли бы вы предоставить минимальный воспроизводимый пример, включающий данные и ваш код.
Ответ №1:
cor(x)
функция при задании одного аргумента (матрицы или data.frame) вычисляет корреляции между всеми парами переменных, присутствующих в столбцах. Однако одна и та же функция может принимать два аргумента: cor(x, y)
, и в этом случае она вычисляет только корреляции между парами x и y.
Итак, в вашем случае вы можете указать все переменные вашей группы как x, а переменную ответа как y, а затем отобразить результат (при условии, что «ответ» находится в последнем столбце):
cors <- cor(dat[,-ncol(dat)], dat[,ncol(dat)])
corrplot::corrplot(cors)