将栅格单元格设置为零以在 Rasterio 中没有数据
Setting raster cells equal to zero to no data in Rasterio
给定一个随机光栅 tif 文件,我想使用 Python/rasterio 将所有值为 0 的单元格设置为 'no data'。我似乎找不到关于这个简单操作的文档。
import rasterio
src = rasterio.open('some_grid.tif')
...........
使用 R 的光栅包,我对它的了解程度更高,我会像这样执行此操作:
library(raster)
rast <- raster('some_grid.tif')
rast[rast == 0] <- NA
Python 中的语法类似,首先将 tif 文件读入一个 numpy 数组。 array==0 生成一个布尔数组,然后可以将其用作将所需值设置为 NAN 的索引掩码。
import rasterio
import numpy as np
with rasterio.open('some_grid.tif') as src:
array = src.read(1)
array[array==0] = np.nan
给定一个随机光栅 tif 文件,我想使用 Python/rasterio 将所有值为 0 的单元格设置为 'no data'。我似乎找不到关于这个简单操作的文档。
import rasterio
src = rasterio.open('some_grid.tif')
...........
使用 R 的光栅包,我对它的了解程度更高,我会像这样执行此操作:
library(raster)
rast <- raster('some_grid.tif')
rast[rast == 0] <- NA
Python 中的语法类似,首先将 tif 文件读入一个 numpy 数组。 array==0 生成一个布尔数组,然后可以将其用作将所需值设置为 NAN 的索引掩码。
import rasterio
import numpy as np
with rasterio.open('some_grid.tif') as src:
array = src.read(1)
array[array==0] = np.nan