meridian.data.time_coordinates.TimeCoordinates

Meridian 输入数据中时间坐标的封装容器。

Meridian 模型以无类型字符串的形式存储时间坐标。Meridian 会将这些字符串视为标签,除了假定它们代表一些呈线性增加的时间坐标之外,它们对模型没有任何内在意义。

此封装容器对象会通过一些额外的验证和方法,从被视为数字“日期”值的时间坐标中提取值。

datetime_index 给定的时间坐标,解析为可编入索引的 DatetimeIndex
all_dates 给定的时间坐标,作为一组 Pythonic datetime.date 对象。
all_dates_str 给定的时间坐标,作为一组 Meridian 格式的日期字符串。可用于模型内部,而模型内部会将时间坐标视为简单标签。
interval_days 返回 all_dates 中两个相邻日期之间的间隔。

方法

expand_selected_time_dims

查看源代码

根据所选时间来验证并返回时间维度值。

如果 start_dateend_date 均为 None,则返回 None。如果指定了值,则 start_dateend_date 都包含在内,并且必须出现在输入数据的时间坐标中。

实参
start_date 所选时间段的开始日期。如果为 None,则表示输入数据中最早的时间维度值。
end_date 所选时间段的结束日期。如果为 None,则表示输入数据中最晚的时间维度值。

返回结果
所选时间段内输入数据中的一组时间维度值(作为 datetime.date 对象);如果两个实参均为 None,或者 start_dateend_date 对应输入数据中的整个时间范围,则不执行任何操作并传递 None

可能引发的错误
如果 start_dateend_date 不在输入数据的时间维度坐标中,则会引发 ValueError

from_dates

查看源代码

基于一组多态日期创建 TimeCoordinates

实参
dates 一组多态日期;可以是具有“YYYY-mm-dd”字符串标签的 Pandas DatetimeIndex 或 Xarray DataArray

返回结果
归一化的 TimeCoordinates 数据类。

get_selected_dates

查看源代码

创建包含所选间隔内所有点的日期序列。

实参
selected_interval 开始时间和结束时间的元组,或 DateInterval Proto。如果为 None,则返回 all_dates

返回结果
一个日期序列,表示给定开始日期和结束日期之间的 all_dates 子集,作为 Python 的内置 datetime.date 对象。

可能引发的错误
ValueError 如果 selected_interval 不是 all_dates 的子集。

__eq__

返回 self==value。