描述
将多维栅格转换为对齐尺寸且包含标注数组(数据数组对象)的 xarray.Dataset。
讨论
Xarray 是一个 Python 模块,支持带有维度、坐标和属性标注的多维数组。它基于 NumPy 和 pandas 构建并与之整合,可处理 Python SciPy 生态系统中的多维数据以用于数值计算。有关详细信息,请参阅 xarray 文档。
您可能需要将 ArcGIS 多维栅格转换为 xarray 数据集才能执行以下类型的运算:
- 在 xarray 模块中实施多种函数之一,例如,对 xarray.DataArray 对象运行多维插值、重采样和群运算。
- 利用其他 Python 模块,它们直接使用多种属性域中的 xarray.DataArray 对象,包括地球科学、机器学习等。例如,导入 EOF(经验正交函数)Python 包并对 xarray.DataArray 中的数据执行 EOF 分析。
- 将多维栅格转换为 xarray.DataArray,然后转换为其他 Python 数据类型或格式,例如 pandas DataFrame 对象或 netCDF。
语法
RasterToXarray (in_raster)
参数 | 说明 | 数据类型 |
in_raster | 输入多维栅格转换为 xarray。它可以是 Raster 对象、多维栅格数据集的文件路径或 netCDF 文件。 | Raster |
数据类型 | 说明 |
xarray.Dataset | 输出 xarray.Dataset 对象。 |
代码示例
RasterToXarray 函数的 Python 窗口示例。
import arcpy
import xarray
# Get input Raster multidimensional information
inRas = arcpy.Raster('C:/data/temperature_3hour.crf', True)
inRas.mdinfo
# Convert Raster to Xarray Dataset
xrr = arcpy.ia.RasterToXarray(inRas)
# Upsample the data from originally 3 hour to hourly time interval
newXrr = xrr.resample(StdTime='1H').nearest(tolerance="1H")
#Convert Xarray dataset back to raster
newRaster = arcpy.ia.RasterToXarray(newXrr)
newRaster.save("C:/output/temperature_hourly.crf")