Dataframe 使用类似dplyr的命令在R中组织光栅数据

Dataframe 使用类似dplyr的命令在R中组织光栅数据,dataframe,raster,r,Dataframe,Raster,R,我有三个全球土壤纹理光栅(沙子,粘土和淤泥)。我想根据砂、粘土和淤泥的相对百分比,将这些光栅合并为一个光栅,分为两类(粗和细)。我以前在以这种方式使用时也这样做过: kiwi <- kiwi %>% mutate(group = case_when( clay_value_avg < 20 ~ "coarse", silt_value_avg > 80 ~ "coarse", clay_value_avg > 20 ~ "fine", silt_value_avg

我有三个全球土壤纹理光栅(
沙子
粘土
淤泥
)。我想根据
粘土
淤泥
的相对百分比,将这些光栅合并为一个光栅,分为两类(
)。我以前在以这种方式使用时也这样做过:

kiwi <- kiwi %>% mutate(group = case_when(
clay_value_avg < 20  ~ "coarse",
silt_value_avg > 80 ~ "coarse",
clay_value_avg > 20 ~ "fine",
silt_value_avg < 80 ~ "fine"
))
kiwi%变异(组=病例)(
粘土_值_平均值<20~“粗”,
淤泥_值_平均值>80~“粗糙”,
粘土_值_平均值>20~“细”,
粉土_值_平均值<80~“细”
))

我可以和你一起做这样的事吗?谢谢,

您不能使用这种语法,但还有其他方法

这就是如何创建一个简单且自包含的可复制示例

library(raster)
clay <- silt <- raster(ncol=10, nrow=10)
values(clay) <- 1:100
values(silt) <- 99:0
库(光栅)

clay如果您提供了一个简单的示例输入和所需的输出,可以用来测试和验证可能的解决方案,那么就更容易为您提供帮助。您好@MrFlick谢谢您的评论。我不知道如何为光栅添加可复制的示例?您的意思是显示分辨率、范围等摘要吗?您的问题中是否可以共享光栅?也许是指向公共数据光栅的链接?小而容易得到的最好。您可以随机生成一个数据帧而不依赖外部链接吗?您可以将
转换为具有.data.frame(kiwi)
的数据帧,使用您喜爱的data.table、data.frame或tibble工具操作其中的值,然后将结果打包回具有相同形状的光栅。但最好(如果光栅都在同一个网格上)将它们视为向量,并以这种方式使用它们。
fine <- silt < 80 & clay > 20
coarse <- !fine
f <- function(s, c) {
    s < 80 & c > 20
}
fine <- overlay(silt, clay, fun=f)