Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 从相关矩阵创建指标矩阵_R_Matrix_Correlation - Fatal编程技术网

R 从相关矩阵创建指标矩阵

R 从相关矩阵创建指标矩阵,r,matrix,correlation,R,Matrix,Correlation,我有一个表格,显示了每个源1,…,n的三个不同变量Correlation1,Correlation2,Correlation3之间的相关性。然而,并非每个来源都报告了所有的相关性 现在我想创建一个矩阵,指出这些关联中的哪一个是在哪个源中给出的。指标矩阵的行数应等于不带NA的corr.表格中给出的值总数。如果给出该位置的相应相关性,则指示器始终位于对角线上,并设置为1 我用一个简单的例子总结了我的问题: 这里,源1包含第一个相关性,因此对角线的第一个值设置为1,所有其他元素为0。资料来源2中也给出

我有一个表格,显示了每个源1,…,n的三个不同变量Correlation1,Correlation2,Correlation3之间的相关性。然而,并非每个来源都报告了所有的相关性

现在我想创建一个矩阵,指出这些关联中的哪一个是在哪个源中给出的。指标矩阵的行数应等于不带NA的corr.表格中给出的值总数。如果给出该位置的相应相关性,则指示器始终位于对角线上,并设置为1

我用一个简单的例子总结了我的问题:

这里,源1包含第一个相关性,因此对角线的第一个值设置为1,所有其他元素为0。资料来源2中也给出了同样的情况。Source 3报告所有三个相关性,因此第三行中的第一个值将设置为1,第四行中的第二个元素也设置为1,第五行中的第三个值设置为1。等等

您有没有想法,在R中给定相关矩阵的情况下,如何创建此指标矩阵?

这可能会起作用:

 > df <- matrix(rnorm(18),6,3)
    > df[4,1] <- NA
    > df[3,2] <- NA
    > df[6,3] <- NA

> df
            [,1]        [,2]       [,3]
[1,]  0.59299285  0.47057987  1.5362658
[2,] -1.06073361  0.03898895 -0.3732643
[3,]  0.35102152          NA  0.7484060
[4,]          NA  0.58117835 -0.4967971
[5,]  0.09878368 -0.71531458  1.4571918
[6,] -0.86293568 -0.07522243         NA
编辑:正如@Ferdinand指出的,以下内容更简单:

> idmat <- 1-is.na(df)
     [,1] [,2] [,3]
[1,]    1    1    1
[2,]    1    1    1
[3,]    1    0    1
[4,]    0    1    1
[5,]    1    1    1
[6,]    1    1    0

请阅读并相应更新您的问题。你试过什么?干杯。你能澄清一下在指标矩阵中设置1或0的条件吗?或者简单地说是1-is.nadf。几乎是的,但你位置[1,2]的值应该在位置[2,2],位置[1,3]的值应该在位置[3,3]。对于您示例中的第[3]行,指标矩阵中只有两行:[7,1]为1,[8,3]为1。。。我知道我的问题和例子有点奇怪。但是颜色应该让我很容易理解我的问题。
> idmat <- 1-is.na(df)
     [,1] [,2] [,3]
[1,]    1    1    1
[2,]    1    1    1
[3,]    1    0    1
[4,]    0    1    1
[5,]    1    1    1
[6,]    1    1    0