Установка растровых ячеек равных нулю или отсутствию данных в Растерио - PullRequest
0 голосов
/ 03 июня 2019

Учитывая случайный растровый TIF-файл, я хочу установить для всех ячеек, которые имеют значение 0, «нет данных» с помощью Python / rasterio.Кажется, я просто не могу найти документацию по этой простой операции.

import rasterio

src = rasterio.open('some_grid.tif')
...........

С растровым пакетом R, с которым я гораздо более грамотен, я бы выполнил эту операцию следующим образом:

library(raster)

rast <- raster('some_grid.tif')
rast[rast == 0] <- NA

1 Ответ

2 голосов
/ 03 июня 2019

Аналогичный синтаксис в Python, сначала прочитайте в файле tif массив numpy.массив == 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
...