Python - szeregi czasowe

Szeregi czasowe to seria punktów danych, w których każdy punkt danych jest powiązany z sygnaturą czasową. Prostym przykładem jest cena akcji na giełdzie w różnych momentach w danym dniu. Innym przykładem jest ilość opadów w regionie w różnych miesiącach roku.

W poniższym przykładzie bierzemy wartość kursów akcji każdego dnia dla danego symbolu giełdowego. Przechowujemy te wartości jako plik csv, a następnie organizujemy je w ramce danych za pomocą biblioteki pandas. Następnie ustawiamy pole daty jako indeks ramki danych, odtwarzając dodatkową kolumnę Valuedate jako indeks i usuwając starą kolumnę Valuedate.

Przykładowe dane

Poniżej przykładowe dane dotyczące ceny akcji w różnych dniach danego kwartału. Dane są zapisywane w pliku o nazwie stock.csv

ValueDate	Price
01-01-2018,	1042.05
02-01-2018,	1033.55
03-01-2018,	1029.7
04-01-2018,	1021.3
05-01-2018,	1015.4
...
...
...
...
23-03-2018,	1161.3
26-03-2018,	1167.6
27-03-2018,	1155.25
28-03-2018,	1154

Tworzenie szeregów czasowych

from datetime import datetime
import pandas as pd
import matplotlib.pyplot as plt

data = pd.read_csv('path_to_file/stock.csv')
df = pd.DataFrame(data, columns = ['ValueDate', 'Price'])

# Set the Date as Index
df['ValueDate'] = pd.to_datetime(df['ValueDate'])
df.index = df['ValueDate']
del df['ValueDate']


df.plot(figsize=(15, 6))
plt.show()

Jego output wygląda następująco -