首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >对于光栅层,什么是R的paste0()?

对于光栅层,什么是R的paste0()?
EN

Stack Overflow用户
提问于 2022-06-17 22:30:57
回答 1查看 58关注 0票数 0

我有三个相同像素大小的重叠光栅。raster1的值为1-10,raster2的值为1-4,raster3的值为1-6.我想要创建一个新的图层,将它们的值粘贴在一起,以获得唯一的ID。例如,对于raster1=10、raster2=3、raster3=5中的像素,我希望输出是一个像素值为"10-3-5“的栅格。

EN

回答 1

Stack Overflow用户

发布于 2022-06-19 14:15:51

您可以在{terra}版本unique(x, as.raster=TRUE) 1.5-43中使用>=。这是目前的开发版本。你可以用install.packages('terra', repos='https://rspatial.r-universe.dev')安装它

示例数据

代码语言:javascript
复制
library(terra)
r <- rast(ncols=5, nrows=5)
values(r) <- rep(1:5, each=5)
s <- c(r, round(r/3), r+2)

解决方案

代码语言:javascript
复制
u <- unique(s, as.raster=TRUE)

检查结果

代码语言:javascript
复制
plot(u)

u
#class       : SpatRaster 
#dimensions  : 5, 5, 1  (nrow, ncol, nlyr)
#resolution  : 72, 36  (x, y)
#extent      : -180, 180, -90, 90  (xmin, xmax, ymin, ymax)
#coord. ref. : lon/lat WGS 84 
#source      : memory 
#categories  : label, lyr.1, lyr.1.1, lyr.1.2 
#name        : label 
#min value   : 1_0_3 
#max value   : 5_2_7 

levels(u)
#[[1]]
#  ID label
#1  0 1_0_3
#2  1 2_1_4
#3  2 3_1_5
#4  3 4_1_6
#5  4 5_2_7
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72665364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档