【问题标题】:Extract data of specific dates from NETCDF dataset从 NETCDF 数据集中提取特定日期的数据
【发布时间】:2022-02-12 02:13:50
【问题描述】:

我有 netcdf 数据,其中包含 2020 年的每日数据,以特定湿度为变量,还有一个 Excel 文件,其中包含在北印度洋上空形成的所有气旋的日期。大多数情况下,当我们想在特定时间范围内提取数据时,我们使用 xarray 进行切片,但在这种特殊情况下,我面临的问题是,我只需要为 excel 文件中的那些特定气旋日提取数据并创建一个复合材料。如果有人可以通过展示如何完成它来帮助我,将不胜感激。 我附上了 netcdf 数据集和包含旋风天数的 excel 文件的链接。netcdfcyclonedays

【问题讨论】:

    标签: python pandas netcdf python-xarray


    【解决方案1】:

    这很简单。您可以将字符串日期转换为pandasdatetime 对象,然后直接使用它从DataArray 中选择数据。

    import xarray as xr
    import pandas as pd
    
    ds = xr.load_dataset('data.nc')
    times = pd.read_excel('time.xlsx')
    
    times['Date(DD/MM/YYYY)'] = pd.to_datetime(times['Date(DD/MM/YYYY)'], infer_datetime_format=True)
    
    ds['shum'][ds.time.isin(times.values)]
    

    在这种情况下,输出没有数据,因为您的日期是 2020 年,而 netcdf 文件只有 2019 年的日期。

    【讨论】:

    • 哦,是的,你是对的。我们只需要获取时间步长,然后在 NC 数据中选择相似的时间步长即可。非常感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 2023-03-07
    • 2022-06-13
    • 1970-01-01
    • 2021-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-16
    相关资源
    最近更新 更多