如何从函数的输出中减去我需要的元素?

时间:2018-04-04 12:59:18

标签: r matrix probability bindata

我是R的新手,我想生成一个联合概率矩阵。

使用此功能:

> simul.commonprob(margprob=c(0.1,0.25,0.2), corr=0, method="integrate", n1=10^5, n2=10)

我得到了以下结果:

0 0.1 0.1 : done
0 0.1 0.25 : done
0 0.1 0.2 : done
0 0.25 0.25 : done
0 0.25 0.2 : done
0 0.2 0.2 : done
, , 0

       0.1   0.25  0.2
0.1  0.010 0.0250 0.02
0.25 0.025 0.0625 0.05
0.2  0.020 0.0500 0.04

我想减去这个矩阵,以便稍后可以将它用作另一个函数的输入,换句话说我想要这个结果:

0.1   0.25  0.2
0.1  0.010 0.0250 0.02
0.25 0.025 0.0625 0.05
0.2  0.020 0.0500 0.04

我怎样才能得到它?

1 个答案:

答案 0 :(得分:1)

您获得的矩阵是您调用的函数返回的对象。您可以将它存储在您定义的对象中:

myOutput <- simul.commonprob(margprob=c(0.1,0.25,0.2), corr=0, method="integrate", n1=10^5, n2=10)
myMatrix <- matrix(data = as.vector(myOutput), nrow = 3, ncol = 3)
rownames(myMatrix) <- c(0.1,0.25,0.2)
colnames(myMatrix) <- c(0.1,0.25,0.2)

现在myMatrix具有您想要的输出。您可以将其用作其他功能的输入。