Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 当文件和数据集都有一个“";时间“;成分_Python_Python Xarray - Fatal编程技术网

Python 当文件和数据集都有一个“";时间“;成分

Python 当文件和数据集都有一个“";时间“;成分,python,python-xarray,Python,Python Xarray,我不知道这个问题怎么说,但我希望这个例子能解释它 我每天都有一系列netcdf文件的数据。 每个文件都包含一个数据的时间维度,作为30天的预测 如果我使用以下方法读取一年的数据: data=xarray.open_mfdataset(files, concat_dim='None', autoclose='True') 然后我得到: Dimensions: (None: 365, lat: 110, lon: 100, time: 395) 我只对每个文件在时间=0时的值感兴趣,即,对于

我不知道这个问题怎么说,但我希望这个例子能解释它

我每天都有一系列netcdf文件的数据。 每个文件都包含一个数据的时间维度,作为30天的预测

如果我使用以下方法读取一年的数据:

data=xarray.open_mfdataset(files, concat_dim='None', autoclose='True')
然后我得到:

Dimensions:   (None: 365, lat: 110, lon: 100, time: 395)
我只对每个文件在时间=0时的值感兴趣,即,对于文件=0,对于文件=360,我希望时间=0,等等

基本上,我认为我想做的只是从每个文件中读取时间组件的第一个元素,但我似乎不知道如何使用open_mfdataset来实现这一点


即使只是在读取整个内容后删除不需要的值也可以,但我似乎也无法理解这一点,因为open_mfdataset连接数据集的方式。

使用预处理函数将允许您执行所需操作。预处理函数在连接之前应用,因此您可以在
open_mfdataset
步骤中使用该函数重新格式化数据集

def preprocess(ds):
    '''keep only the first timestep for each file'''
    return ds.isel(time=0)


data = xr.open_mfdataset(files, preprocess=preprocess, concat_dim='time', ...)

根据文件的格式,您可能需要在
预处理
中进一步清理数据集

谢谢!我不知道这是可能的。