首页 > 解决方案 > 栅格化后保留图层名称

问题描述

我有一个数据框,其中包含 50 个位置的 x、y、值和唯一 ID。我将此数据框转换为栅格,但我丢失了这些位置的唯一 ID。如何保留创建的栅格中每个位置的名称?

Pred13 = data.frame(x,y,Index)
coordinates(Pred13) = ~x+y
rst_pred_13 <- raster()
extent(rst_pred_13) <- extent(Pred13)
Pred_Yld13 = rasterize(Pred13, rst_pred_13, Pred13, fun = mean) 

这只是转换为栅格,但名称(唯一 ID)不再存在。

ID      x           y           Index
D103    574070.6    4452182.5   0.716371109
D104    574969.4    4452182.5   0.744886447
D105    575868.2    4452182.5   0.748975528
D106    576767      4452182.5   0.766794456
S107    577665.8    4452182.5   0.693888885
S108    578564.6    4452182.5   0.711575956
S109    579463.4    4452182.5   0.665713451
S110    580362.2    4452182.5   0.66711642
S111    581261      4452182.5   0.744038446
F112    582159.8    4452182.5   0.698995257
F113    583058.6    4452182.5   0.645033871
F114    583957.4    4452182.5   0.661884746
F115    584856.2    4452182.5   0.661850527
F116    585755      4452182.5   0.59968895
R117    586653.8    4452182.5   0.693592996
R118    587552.6    4452182.5   0.744853835
M119    588451.4    4452182.5   0.746308897
M120    589350.2    4452182.5   0.742065499
M121    590249      4452182.5   0.715676129
M122    591147.8    4452182.5   0.662452103

标签: r

解决方案


我解决了这个问题,这就是我做的方式。不管怎么说,还是要谢谢你。

df = data.frame(test, na.rm=T)
x=df$x
y=df$y
Index=df$Index
Id_un = unique(df$ID)
for(i in Id_un){
  Pred13 = data.frame(x,y,Index)
  rst = rasterFromXYZ(Pred13)
  names(rst) = unique(i)
  rst$newID = as.factor(i)
}

推荐阅读