python-xarray相关内容

按月或按年平均值计算的x数组和5年平均值

我需要从月平均或年平均时间序列数据计算5年平均数据(不是滚动平均数据,而是日历年数据)。 在搜索了XARRAY文档之后,我找不到一种简单的方法来完成它。 有没有人有计算这类平均值的方法? 谢谢! 推荐答案 计算5年平均值的最简单方法是将自定义频率传递给resample(),例如 In [24]: ds = xr.Dataset({'x': ('time', np.arang ..
发布时间:2022-08-14 10:09:44 其他开发

如果已创建dask.Distributed客户端,则xarray.open_mfdatet()不起作用

我有一个奇怪的问题,我希望能提供一些意见。基本上,我在AWS Pangeo Cloud上运行一台笔记本,并使用xr.open_mfdataset在S3(带有s3f)上打开一些GOES-16卫星数据。 如果我根本不使用DASK,这将非常有效,因为数据集在几分钟内就构建好了。 但是,如果我在打开文件之前创建dask.distributed客户端,open_mfdataset似乎永远挂起。 ..
发布时间:2022-04-14 16:32:21 Python

在xarray中按单个维度的多个坐标分组

我有一个沿一维具有多个坐标的xarray。在下面的示例中,坐标a和b是沿着维度dim1定义的。我如何groupby使用沿相同维度定义的两个坐标?与this question不同,我不是尝试沿着不同的维度分组,而是沿着单个维度进行分组。 import xarray as xr d = xr.DataArray([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11 ..
发布时间:2022-02-26 21:10:03 Python

计算 xarray 数据集的平方根误差

我有一月份的 xarray 数据集 monthly_data 包含以下信息: lat: float64 (192)lon:float64(288)时间:对象(1200)(每月数据)数据变量:tas:(时间,纬度,经度)[[[45,78,...],...]...] 我有真实值 grnd_trth,它有 1 月的真实数据 坐标:纬度:float64 (192)lon:float64(288)数据 ..
发布时间:2022-01-21 13:14:15 Python

子集 xarray.Dataset 关于多个坐标

假设我使用 xarray.open_dataset(..., decode_times=False) 加载了一个 xarray.Dataset 对象,打印时看起来像这样: 尺寸:(边界:2,纬度:15,经度:34,列维:8,时间:3650)坐标:* 时间(时间) float64 3.322e+04 3.322e+04 3.322e+04 3.322e+04 ...* plev (plev) fl ..
发布时间:2021-09-01 18:32:17 Python

计算 xarray 中每个网格点的百分位数

我目前正在使用 xarray 制作概率图.我想使用像“计数"练习这样的统计评估.意思是,对于 NEU 中的所有数据点,计算两个变量共同超过其阈值的次数.这意味着降水数据的第 1 个百分点和温度数据的第 99 个百分点.那么连接发生的概率 (P) 就是连接超出的数量除以数据集中数据点的数量. 维度:(纬度:88,经度:200,时间:6348)坐标:* 纬度(纬度) float64 49.62 49 ..

使用 xarray 添加全局属性

有没有办法使用 xarray 将全局属性添加到 netCDF 文件?当我执行诸如 hndl_nc['global_attribute'] = 25 之类的操作时,它只会添加一个新变量. 解决方案 在 Xarray 中,直接索引一个 Dataset 就像 hndl_nc['variable_name'] 拉出一个 >DataArray 对象.要获取或设置属性,索引 .attrs 就像 hnd ..
发布时间:2021-06-07 19:17:07 Python

使用xarray获取netcdf文件的平均值

我使用xarray在python中打开了一个netcdf文件,数据集摘要如下所示. 尺寸:(纬度:721,经度:1440,时间:41)座标:*经度(经度)float32 0.0 0.25 0.5 0.75 ... 359.25 359.5 359.75*纬度(latitude)float32 90.0 89.75 89.5 89.25 ... -89.5 -89.75 -90.0展开int32 ..
发布时间:2021-05-10 19:15:51 Python

有没有一种更快的方法来汇总Xarray数据集变量?

这是我有史以来第一个堆栈交换问题,所以我希望我做得正确. 我正在尝试将数据集中的一些xarray变量求和.每个变量具有相同的尺寸.代码本质上是这样的: def add_variables(xarray_dataset,listofvars):数据= 0对于listofvars中的var:数据=数据+ dset [var] [:,-1 ,:]#每个变量的切片返回数据summed_varia ..
发布时间:2021-04-29 18:46:54 Python

使用xarray对大熊猫使用的非标准CFTimeIndex日历(360天,无le年)进行重新采样的方法

#60198708 带我打开了它问题,因为我还没有找到好的解决方案. 问题 我从EURO-CORDEX集成下载了几种气候模型,用于每日降水通量.虽然某些模型可以使用标准日历,并且与Pandas datetime 兼容,但其他模型(尤其是MOHC HadGem2 ES)却可以使用360天的 CFTimeIndex . 主要问题是,如何使用这些日历有效地对月度数据进行重新采样,以使其 ..
发布时间:2021-04-29 18:44:25 Python

沿轴应用柔光性能

我正在尝试使用dask在大型高分辨率海洋模型数据集上计算随时间的线性趋势. 我已遵循此示例(应用函数沿着简单数组的轴),发现 apply_along_axis 的语法更容易. 我目前正在使用 dask.array.apply_along_axis 将numpy函数包装在1维数组上,然后将生成的dask数组打包到xarray Dataarray 中.使用 top -u ..
发布时间:2021-04-28 19:33:45 其他开发

使用xarray,如何并行处理多维数据集上的一维操作?

我有一个4D xarray数据集.我想在特定维度(此处为时间)的两个变量之间进行线性回归,并将回归参数保留在3D数组(其余维度)中.通过使用此序列号,我设法获得了想要的结果,但是速度很慢: #添加空数组以存储回归结果res_shape =元组(如果k!='year',则在ds [x] .sizes.items()中为k,v表示v)res_dims =元组(如果k!='year',则ds [x] ..
发布时间:2021-04-28 19:33:27 Python

如何使用虹膜模块绘制大气的垂直剖面以及地形?

我有一个netcdf,其风速处于模型级别.在同一netcdf上,我具有每个模型级别的高度.我将netcdf转换为一个立方体,因此每个级别的高度都变成了辅助坐标.我想绘制一个横截面(经度x经度),并希望模型级别遵循地形.我尝试使用Iris模块文档示例( https://scitools.org.uk/iris/docs/latest/examples/General/cross_section.ht ..

有没有一种方法可以释放xarray.Dataset的文件锁?

我有一个使用 netcdf4.Dataset(fn,mode = a)每5分钟生成一个NetCDF文件 fn 的过程.我还使用 xarray.Dataset (我想保留它,因为它很方便)来对该NetCDF文件进行bokeh服务器可视化. 问题是,如果通过 fn 在我的bokeh服务器进程中打开了新数据,则尝试将其添加到 fn 时,NetCDF更新进程将失败. ds = xarray.o ..
发布时间:2021-04-23 20:38:11 Python

分块写入XArray MultiIndex数据

我正在尝试有效地重组大型多维数据集.假设随着时间的推移,我有许多遥感图像,其中有多个带,坐标用于像素位置为x y,图像获取时间为时间,而采集的不同数据为带. 在我的用例中,假设xarray的坐标长度大致为x(3000),y(3000),时间(10)和浮点数据的带(40).所以100gb +的数据. 我一直在尝试使用此示例,但是我很难将其翻译成这种情况. 小数据集示例 注意: ..
发布时间:2021-04-09 20:15:21 Python

分段错误将xarray数据集写入netcdf或dataframe

使用从多个grib2文件创建的xarray数据集时出现分段错误.写入netcdf以及写入数据帧时都会发生此错误.对于出了什么问题的任何建议,我们将不胜感激. files = os.listdir(download_dir) 文件示例(来自 http://dd.weather. gc.ca/model_hrdps/west/grib2/00/000/) 'CMC_hrdps_west_RH ..
发布时间:2020-07-28 05:23:16 Python