Interval: 시계열의 시간 구간
from foundryts import Interval
interval = Interval(
start="2018-01-01",
end="2018-02-01",
name="january",
metadata={"days": 31},
)
foundryts.Interval(start=None, end=None, name=None, metadata=None)은 시작 시각을 포함하고 종료 시각은 포함하지 않는 구간입니다. 위 예제는 2018년 1월 1일부터 2월 1일 직전까지의 구간에 이름과 메타데이터를 붙입니다.
NodeCollection.map_intervals에 구간을 전달하여 시계열을 나누거나, 조건을 만족하는 시간 구간을 찾는 계산 결과를 표현할 때 사용합니다.
생성자 인수
| 인수 | 형식 | 기본 인수 | 의미 |
|---|---|---|---|
| start | int, datetime 또는 str | None | 포함하는 시작 시각 |
| end | int, datetime 또는 str | None | 포함하지 않는 종료 시각 |
| name | int, datetime 또는 str | None | 선택적 구간 이름 |
| metadata | Dict[str, Any] | None | 구간에 연결할 메타데이터 |
조회할 경계를 정하려면 start와 end를 모두 명시합니다. 정수 시각은 나노초 단위로 다룹니다.
시각과 메타데이터 속성
| 속성 | 반환 내용 |
|---|---|
| start | 시작 시각의 codex_core.Timestamp |
| end | 종료 시각의 codex_core.Timestamp |
| start_codex | Codex 형식의 시작 시각 |
| end_codex | Codex 형식의 종료 시각 |
| start_native | int, datetime 또는 str 형식의 시작 시각 |
| end_native | int, datetime 또는 str 형식의 종료 시각 |
| start_ns | 시작 시각을 나노초로 나타낸 값 |
| end_ns | 종료 시각을 나노초로 나타낸 값 |
| name | 구간 이름 |
| metadata | 메타데이터 딕셔너리 |
start_codex와 end_codex는 현재 start 및 end의 Codex 표현과 대응합니다. 시각 접근 API는 Python 기본 형식으로의 이전을 고려하여 Codex와 native 접근 경로를 구분하므로, 호출 코드에 필요한 표현을 선택합니다.
가상 구간의 name은 january, metadata의 days 값은 31입니다.
interval_name = interval.name
number_of_days = interval.metadata["days"]
start_in_nanoseconds = interval.start_ns
end_in_nanoseconds = interval.end_ns