시계열 키 기능
시계열 라이브러리는 숫자 및 카테고리 유형뿐 아니라 일변량, 다변량, 다중 키 시계열에 대한 다양한 기능을 제공합니다.
라이브러리가 제공하는 기능은 다음과 같이 광범위하게 분류할 수 있습니다.
- 시계열 데이터 작성 및 저장을 위한 시계열 I/O
- 시계열 함수, 변환, 윈도잉 또는 세분화 및 감축기
- 확장 가능한 시계열 함수 실행을 가능하게 하는 시계열 SQL 및 Spark에 대한 SQL 확장
주요 기능의 일부가 다음 섹션에서 예를 사용하여 표시됩니다.
시계열 I/O
시계열을 위한 1차 입출력(I/O) 기능은 pandas DataFrame 또는 Python 목록을 통합니다. 다음 코드 샘플은 DataFrame에서 시계열 구성을 보여줍니다.
>>> import numpy as np
>>> import pandas as pd
>>> data = np.array([['', 'key', 'timestamp', "value"],['', "a", 1, 27], ['', "b", 3, 4], ['', "a", 5, 17], ['', "a", 3, 7], ['', "b", 2, 45]])
>>> df = pd.DataFrame(data=data[1:, 1:], index=data[1:, 0], columns=data[0, 1:]).astype(dtype={'key': 'object', 'timestamp': 'int64', 'value': 'float64'})
>>> df
key timestamp value
a 1 27.0
b 3 4.0
a 5 17.0
a 3 7.0
b 2 45.0
#Create a timeseries from a dataframe, providing a timestamp and a value column
>>> ts = tspy.time_series(df, ts_column="timestamp", value_column="value")
>>> ts
TimeStamp: 1 Value: 27.0
TimeStamp: 2 Value: 45.0
TimeStamp: 3 Value: 4.0
TimeStamp: 3 Value: 7.0
TimeStamp: 5 Value: 17.0
시계열을 다시 Pandas DataFrame으로 되돌리려면 to_df
함수를 사용하십시오.
>>> import tspy
>>> ts_orig = tspy.time_series([1.0, 2.0, 3.0])
>>> ts_orig
TimeStamp: 0 Value: 1
TimeStamp: 1 Value: 2
TimeStamp: 2 Value: 3
>>> df = ts_orig.to_df()
>>> df
timestamp value
0 0 1
1 1 2
2 2 3
데이터 모델
시계열 데이터는 Open Geospatial Consortium(OGC) 같은 표준이 적용되는 공간 같은 몇 가지 데이터 유형과는 달리 모델 및 데이터 유형에 대한 어떤 표준도 갖지 않습니다. 시계열 데이터를 사용한 인증 확인은 Spark 탄력적 분산 데이터 세트(RDD)와 비슷하게 지원되어야 하는 광범위한 함수입니다.
데이터 모델은 시계열의 세분화 또는 윈도잉, 한 시계열에서 다른 시계열로의 변환, 시계열로부터 정적 값을 계산하는 감축기, 복수 시계열을 결합하는 결합, 여러 시간대의 시계열 수집기의 서로 다른 양식을 갖는 광범위한 오퍼레이션을 허용합니다. 시계열 라이브러리는 핵심 데이터 구조를 변경 불가능하게 유지하면서 새 함수의 플러그 앤드 플레이를 가능하게 합니다. 라이브러리는 또한 숫자 및 카테고리 유형 시계열을 지원합니다.
시간대 및 사람이 읽을 수 있는 다양한 시간 형식을 사용할 때 데이터 모델의 중요한 면은 시간 기준 시스템(TRS)의 지원입니다. 모든 시계열은 TRS와 연관되며(시스템 기본값), 언제든지 사용자가 선택하는 특정 선택사항에 다시 맵핑할 수 있어서 특정 시계열 또는 시계열 세그먼트의 쉬운 변환을 가능하게 합니다. 시간 참조 시스템 사용을 참조하십시오.
또한 대규모 시계열 처리가 필요하므로 라이브러리는 최대한의 좁은 시간적 의존성을 식별하기 위한 메커니즘을 제공하여 지연 평가 구성을 제공합니다. 이 구성은 역시 필요할 때 데이터를 메모리에 로드하고 필요할 때만 연산을 실현하는 Spark 연산 그래프의 구성과 매우 유사합니다.
시계열 데이터 유형
다중 데이터 유형을 시계열, 지속적 숫자, 카테고리, 배열 및 사전 데이터 구조의 요소로서 사용할 수 있습니다.
다음 데이터 유형이 시계열에서 지원됩니다.
데이터 유형 | 설명 |
---|---|
숫자 | 이중 및 정수를 포함한 숫자 유형의 일변량 관측을 갖는 시계열입니다. 예를 들면 다음과 같습니다. [(1, 7.2), (3, 4.5), (5, 4.5), (5, 4.6), (5, 7.1), (7, 3.9), (9, 1.1)] |
숫자 배열 | 이중 배열 및 정수 배열을 포함한 숫자 유형의 다변량 관측을 갖는 시계열입니다. 예를 들면 다음과 같습니다. [(1, [7.2, 8.74]), (3, [4.5, 9.44]), (5, [4.5, 10.12]), (5, [4.6, 12.91]), (5, [7.1, 9.90]), (7, [3.9, 3.76])] |
문자열 | 문자열 유형의 일변량 관측값이 있는 시계열(예: [(1, "a"), (3, "b"), (5, "c"), (5, "d"), (5, "e"), (7, "f"), (9, "g")] ) |
문자열 배열 | 유형 문자열 배열의 다변량 관측값이 있는 시계열(예: [(1, ["a", "xq"]), (3, ["b", "zr"]), (5, ["c", "ms"]), (5, ["d", "rt"]), (5, ["e", "wu"]), (7, ["f", "vv"]), (9, ["g", "zw"])] ) |
세그먼트 | 세그먼트의 시계열입니다. segmentBy 함수의 출력은 숫자, 문자열, 숫자 배열, 문자열 배열을 포함한 모든 유형일 수 있습니다. 예: [(1,[(1, 7.2), (3, 4.5)]), (5,[(5, 4.5), (5, 4.6), (5, 7.1)]), (7,[(7, 3.9), (9, 1.1)])] |
사전 | 사전의 시계열입니다. 사전은 그 안에 임의 유형을 가질 수 있습니다. |
시계열 함수
제공된 시계열 패키지의 여러 가지 함수를 사용하여 시계열 데이터를 분석하여 이전에 관찰된 값을 바탕으로 새로운 값을 예측하는 데 사용될 수 있는 의미 있는 정보를 추출할 수 있습니다. 시계열 함수를 참조하십시오.
자세히 알아보기
tspy
Python SDK를 사용하려면 tspy
Python SDK 문서를 참조하십시오.
상위 주제: 시계열 분석