我有一个相当大的netCDF文件(~10 GB),其填充值为-1.0
当我像这样使用xarray的fillna时:
hndl_nc = hndl_nc.fillna(0.0)
它很慢(约2分钟),是否有另一个可能更快的操作员?或者,考虑到文件的大小,这是预期的吗?
答案 0 :(得分:3)
在~85MB / s时,这是在矢量化NumPy / xarray操作的典型性能的球场。我认为通过简单地使用另一种内置操作,你不太可能明显改善这一点。
您可能仍然可以通过一些实验来提高性能。首先要做的是分析并查看CPU使用情况,以确定花费的时间。
.load()
),不压缩地重写文件,或尝试使用Dask分布式或多处理的xarray v0.9.0或更新版本(当前处于候选版本中)。engine='scipy'
会更快scale_factor
/ add_offset
以压缩int16
中的数据,而不是更大的浮动类型