1
我使用mapply
与我的两个矩阵的功能,但最终的结果是一个向量。我试过使用SIMPLIFY = TRUE
没有成功。获得一个矩阵的形式在R中的一个矩阵的形式
有没有办法让我的结果以矩阵的形式得到,而不必构造?
在此先感谢。
> a=matrix(c(0,2, 0, 0, 1, 3, 0, 3, 2, 0, 3, 5, 0, 4, 0, 0),ncol=4)
> a
[,1] [,2] [,3] [,4]
[1,] 0 1 2 0
[2,] 2 3 0 4
[3,] 0 0 3 0
[4,] 0 3 5 0
> ab=matrix(c(4,2, 0, 7, 1, 4, 5, 3, 2, 6, 3, 7, 1, 2, 1, 2),ncol=4)
> ab
[,1] [,2] [,3] [,4]
[1,] 4 1 2 1
[2,] 2 4 6 2
[3,] 0 5 3 1
[4,] 7 3 7 2
> mapply(l0.0025,a,ab)
[1] 3.9900 0.0000 0.0000 6.9825 0.0000 0.9975 4.9875 0.0000
[9] 0.0000 5.9850 0.0000 1.9950 0.9975 0.0050 0.9975 1.9950
l0.0025 <- function(x, y) {
if (x-y >= 0) {0.0025*(x-y)} else {-(1-0.0025)*(x-y)}
}
请提供一个可重现的例子。 –
@Matthew Plourde >一个 [1] [2] [3] [,4] [1,] 0 1 2 0 [2,1] 2 3 0 4 [3,] 0 0 3 0 [4,] 0 3 5 0 > AB [1] [2] [3] [,4] [1,] 4 1 2 1 [2,1] 2 4 6 2 [3,] 0 5 3 1 [4,] 7 3 7 2 > mapply(l0.0025,A,AB) [1] 3.9900 0.0000 0.0000 6.9825 0.0000 0.9975 4.9875 0.0000 0.0000 5.9850 0.0000 1.9950 0.9975 0.0050 0.9975 1.9950 与l0.0025 < - 函数(x,y){if(xy> = 0){0.0025 *(x-y)} else { - (1-0.0025)*(x-y)}} – user1627466
你在开玩笑吗?把它放在问题上! –