将栅格转换为数据框,然后再转换回栅格? [R]

Converting raster to a dataframe, and then back to a raster again? [R]

我正在使用栅格读取栅格(GeoTIFF),然后将其转换为 table,这样我就可以进行一些分析并重新分类一些值。像这样:

r_ndvi <- raster(paste0(path, "ndvi.tif")) #read in as raster
rdf_ndvi <- as.data.frame(r_ndvi) #turn tif into df of DN

完成这些计算后,我想将 table 转换回栅格格式,以便它可以在 QGIS 中作为图像打开。我怎样才能做到这一点?

您可以使用 rasterFromXYZ 函数将 data.frame 转换回光栅,如以下代码

library(raster)

logo <- stack(system.file("external/rlogo.grd", package="raster"))
plot(logo)

rdf_ndvi <- as.data.frame(logo, xy = T) #turn tif into df of DN

raster <- rasterFromXYZ(rdf_ndvi)
plot(raster)