计算数据集不同列集之间的非成对相关性

Calculating non-pairwise correlation between different sets of columns of a dataset

假设要计算数据集 mtcars 的相关性,我们可以使用 corr <- round(cor(mtcars), 1),或者使用 corrplot(cor(mtcars) 计算并绘制相关矩阵。但是,乘积是成对相关的。是否可以计算特定列集之间的非成对相关性,即在 mtcars 中,列之间的相关性 1:3 (mpg, cyl, disp) VS 列 4:8 (hp, drat, wt, qsec, vs).

请提出任何方法。

我有一个包含 120 列的数据集。我想 calculate/plot 列 1:50 的相关矩阵(Spearman 相关)与其余列(即 51-120)。请告诉我解决方案,如果可能的话,使用 cor 或软件包,即 corrplotggcorrplot.

感谢期待。

你可以使用cor函数来做到这一点,只需要指定第二个参数。示例:

vertical_axis <- 1:3
horizontal_axis <- 4:8
corr <- cor(mtcars[, vertical_axis], mtcars[, horizontal_axis])
corrplot(corr)

结果:


注意: 使用带有 order 参数的 corrplot 函数将产生错误或错误的绘图。如果您需要重新排序变量(例如:使用 hclust),请在将相关矩阵传递给 corrplot.

之前对其重新排序