Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/81.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 - Fatal编程技术网

R 如何根据其他分类值汇总矩阵?

R 如何根据其他分类值汇总矩阵?,r,matrix,R,Matrix,使用三个矩阵: library(raster) r1 <- r2 <- r3 <- raster(ncol=10, nrow=10) r1[] <- runif(ncell(r1)); r1=as.matrix(r1) r2[] <-c(0,5); r2=as.matrix(r2) r3[] <-c(1,2,3,4,5); r3=as.matrix(r3) 最后的结果,对于r3中的值1,我们有 0 >>> (2+1+9

使用三个矩阵:

library(raster)
r1 <- r2 <- r3 <- raster(ncol=10, nrow=10)
r1[] <- runif(ncell(r1));    r1=as.matrix(r1)
r2[] <-c(0,5);    r2=as.matrix(r2)
r3[] <-c(1,2,3,4,5);    r3=as.matrix(r3)
最后的结果,对于r3中的值1,我们有

 0 >>>  (2+1+9)/3= 4
 5 >>>  (6+8)/2 = 7
res


您给出的示例数字与您的数据不匹配,因为r1的值都在0和1之间。不管是哪种方式,都是

library(raster)
r1 <- r2 <- r3 <- raster(ncol=10, nrow=10)
set.seed(1)
r1[] <- runif(ncell(r1))
r2[] <-c(0,5)
r3[] <-c(1,2,3,4,5)
库(光栅)
r1
r3/r2  0   5
1    4   7
2    ?   ?
3    ?   ?
4    ?   ?
5    ?   ?
library(raster)
r1 <- r2 <- r3 <- raster(ncol=10, nrow=10)
set.seed(1)
r1[] <- runif(ncell(r1))
r2[] <-c(0,5)
r3[] <-c(1,2,3,4,5)
r10 <- mask(r1, r2, maskvalue=5)
r15 <- mask(r1, r2, maskvalue=0)
zonal(r10, r3, mean)
zonal(r15, r3, mean)