我处理地理数据,并使用gdal
将大型光栅文件导入python。为了处理它们,我将它们转换成numpy
数组。你知道吗
我创建一个空数组,在循环中填充数据。但是,我需要NaN值与导入的rater文件中的位置相同。你知道吗
data = ds.GetRasterBand(1).GetNoDataValue()
data = np.array(ds.GetRasterBand(1).ReadAsArray())
data[data==-9999] = np.nan # set all -9999 as no data value
cols, rows = data.shape
dataOut = np.zeros([ds.RasterYSize, ds.RasterXSize]) # create empty array with zeros
for c in range(cols):
for r in range(rows):
dataOut[c][r] = np.nan if isinstance(data[c][r], np.ndarray) else dataOut[c][r]
所以我想把数据数组中的NaN值传输到dataOut数组。这些解决方案中没有一个对我有用……dataOut数组仍然只包含零。你知道吗
我自己想出来的…np.isnan是解决办法:
相关问题 更多 >
编程相关推荐