r - 栅格化后保留图层名称
问题描述
我有一个数据框,其中包含 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
解决方案
我解决了这个问题,这就是我做的方式。不管怎么说,还是要谢谢你。
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)
}
推荐阅读
- python - 在 Yolov3 Tensorflow 中没有检测到任何东西
- python - XGBoost 和 Numpy 问题
- reactjs - Microsoft Teams 修改连接器设置页面中的保存按钮
- javascript - 如何在 javascript 中制作和编辑 Html div
- python - 如何在python中仅使用熊猫比较2个不同的excel工作簿列
- json - 如果 JSON 对象名称包含连字符或破折号 (-),如何在 android studio 中使用 Volley Library 获取类似“附近城市”的 JSON 对象名称?
- latex - pandoc "titleformat" 标尺
- r - 在 ggplot2 中使用 facet_wrap 时通过两个轴上的相同值跟踪线性线
- python - 如何在 Matplotlib 和 Pandas 中绘制带有日期时间的阴影区域?
- swift - SKScene 类中的函数未运行