簡體   English   中英

R中2個矩陣之間的MIC相關

[英]MIC correlation between 2 matrices in R

MINERVA軟件包提供了執行最大信息系數(MIC)的功能。 軟件包的描述規定,函數mine(x,y)僅適用於兩個相同大小的矩陣A和B。

在這里,我想獲得從兩個大小不同的A和B矩陣的相關性獲得的MIC系數值,分別為A為n×m,B為n×z,其中n為觀察數(行)。 換句話說,我的目標是獲得一個m x z的C矩陣,對於每個值,該矩陣返回MIC相關系數值(如果可能,還提供相關的P值)。

我提供了一個有關皮爾遜相關性的示例。

set.seed(1)
x <- matrix(rnorm(20), nrow=5, ncol=10)
y <- matrix(rnorm(15), nrow=5, ncol=20)
P <- cor(x, y=y)

我郵寄了一位MINERVA軟件包的作者但未成功,有什么方法可以應用mine函數來獲得所需的m x z相關性?

讓我回答我自己的帖子。 在下面的代碼中,我使用了循環功能,這可能不是最聰明/最快的方法,但是可以按預期工作。

library(minerva)
set.seed(1)
x <- matrix(rnorm(20), nrow=5, ncol=10)
y <- matrix(rnorm(15), nrow=5, ncol=20)

Result = matrix(ncol = ncol(y),nrow = ncol(x))
for(i in 1:ncol(x))
{Thisvar = x[,i]
  print(i)
for(k in 1:ncol(y)) 
  {Thisvar2 = y[,k]
  res = mine(Thisvar,Thisvar2, master=TRUE, use="all.obs")
  Result[i,k] = res$MIC
}}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM