Вычисление непарной корреляции между различными наборами столбцов набора данных
Предположим, чтобы вычислить корреляцию набора данных
mtcars
мы можем использовать
corr <- round(cor(mtcars), 1)
, или рассчитать и построить корреляционную матрицу, используя
corrplot(cor(mtcars)
. Однако продукт попарной корреляции. Можно ли рассчитать непарную корреляцию между определенным набором столбцов, т.е. в mtcars корреляцию между столбцами 1: 3 (mpg, cyl, disp
) VS столбец 4:8
(hp, drat, wt, qsec, vs)
.
Пожалуйста, предложите любой метод.
У меня есть набор данных, содержащий 120 столбцов. Я хочу вычислить / построить матрицу корреляции (корреляция Спирмена) столбцов 1:50 с остальными столбцами (например, 51-120). Скажите, пожалуйста, решение, если возможно, используя
cor
, или пакеты, т.е.
corrplot
,
ggcorrplot
.
Спасибо в ожидании.
1 ответ
Вы можете сделать это с помощью
cor
функции, просто нужно указать второй параметр. Пример:
vertical_axis <- 1:3
horizontal_axis <- 4:8
corr <- cor(mtcars[, vertical_axis], mtcars[, horizontal_axis])
corrplot(corr)
Результат:
ПРИМЕЧАНИЕ. Использование функции с
order
приведет к ошибкам или неправильному графику. Если вам нужно изменить порядок переменных (например: с
hclust
), измените порядок корреляционной матрицы перед передачей ее в
corrplot
.