Ein Wrapper für Zeitkoordinaten in den Eingabedaten von Meridian.
meridian.data.time_coordinates.TimeCoordinates(
datetime_index: pd.DatetimeIndex
)
In Meridian-Modellen werden Zeitkoordinaten als untypisierte Strings gespeichert. Sie werden als Labels behandelt und haben für das Modell keine andere Bedeutung als die Annahme, dass sie linear ansteigende Zeitkoordinaten darstellen.
Dieses Wrapper-Objekt führt einige zusätzliche Validierungen und Methoden zum Extrahieren von Werten aus diesen Zeitkoordinaten aus, die als numerische Datumswerte behandelt werden.
Attribute |
datetime_index
|
Die angegebenen Zeitkoordinaten, die als indexierbarer
DatetimeIndex geparst werden.
|
all_dates
|
Die angegebenen Zeitkoordinaten als Liste von datetime.date-Objekten von Python.
|
all_dates_str
|
Die angegebenen Zeitkoordinaten als Liste von Datumsstrings im Meridian-Format. Sie können für die internen Abfolgen des Modells verwendet werden, in denen Zeitkoordinaten als einfache Labels behandelt werden.
|
interval_days
|
Gibt das Intervall zwischen zwei benachbarten Datumsangaben in all_dates zurück.
|
Methoden
expand_selected_time_dims
Quelle ansehen
expand_selected_time_dims(
start_date: (Date | None) = None, end_date: (Date | None) = None
) -> (list[datetime.date] | None)
Validiert und gibt Zeitdimensionswerte basierend auf den ausgewählten Zeiträumen zurück.
Wenn sowohl start_date als auch end_date auf „None“ gesetzt sind, wird „None“ zurückgegeben. Wenn angegeben, werden start_date sowie end_date berücksichtigt und müssen in den Zeitkoordinaten der Eingabedaten vorhanden sein.
| Argumente |
start_date
|
Startdatum des ausgewählten Zeitraums. Wenn None festgelegt ist, wird der früheste Zeitdimensionswert in den Eingabedaten verwendet.
|
end_date
|
Enddatum des ausgewählten Zeitraums. Wenn None festgelegt ist, wird der letzte Zeitdimensionswert in den Eingabedaten verwendet.
|
| Ausgabe |
Eine Liste von Zeitdimensionswerten (als datetime.date-Objekte) in den Eingabedaten im ausgewählten Zeitraum. Wenn für beide Argumente „None“ festgelegt ist oder start_date und end_date den gesamten Zeitraum in den Eingabedaten abdecken, wird „None“ übergeben.
|
| Löst aus |
„ValueError“, wenn start_date oder end_date nicht in den Zeitdimensionskoordinaten der Eingabedaten enthalten ist. |
from_dates
Quelle ansehen
@classmethod
from_dates(
dates: _TimeCoordinateValues
) -> 'TimeCoordinates'
Erstellt ein TimeCoordinates-Objekt aus einer polymorphen Reihe von Datumsangaben.
| Argumente |
dates
|
Eine polymorphe Reihe von Datumsangaben. Kann ein pandas-DatetimeIndex oder ein xarray-DataArray mit Stringlabels im Format „JJJJ-MM-TT“ sein.
|
| Ausgabe |
Eine normalisierte TimeCoordinates-Datenklasse.
|
get_selected_dates
Quelle ansehen
get_selected_dates(
selected_interval: (meridian.data.time_coordinates.DateInterval | None) = None
) -> list[datetime.date]
Erstellt eine Folge von Datumsangaben mit allen Punkten im ausgewählten Intervall.
| Argumente |
selected_interval
|
Tupel aus Start- und Endzeit oder ein DateInterval-Prototyp. Bei None wird all_dates zurückgegeben.
|
| Ausgabe |
Eine Folge von Datumsangaben, die die Teilmenge von all_dates zwischen den angegebenen Start- und Enddaten darstellt, als integrierte datetime.date-Objekte von Python.
|
| Löst aus |
ValueError
|
Wenn selected_interval keine Teilmenge von all_dates ist.
|
__eq__
__eq__(
other
)
Gibt zurück, ob „self==value“.