Seite 1 von 1

Zeitsequenz Dataframes zusammenführen (jedoch mit Lücken!)

Verfasst: Donnerstag 1. August 2019, 12:57
von Bayne
Hey, habe 3 Dataframes mit ca 99% der gleichen Zeitserie. kommt alles aus je einem CSV wobei alles in der ersten Spalte durch komma seperiert vorliegt.
Damit ihr wisst was ich meine:

1998.12.31 00:00:00,1.167,1.175,1.1632,1.1724,18.3,1.1711,1.174020000000001 ...
1999.01.04 23:00:00,1.1835,1.1836,1.1811,1.1815,6.300000000000001,1.18254,1.181240000000002, ...
1999.01.05 00:00:00,1.1815,1.1824,1.181,1.1818,4.600000000000001,1.18238,1.181570000000002, ...
1999.01.05 01:00:00,1.182,1.1827,1.1807,1.181,13.0,1.1823,1.181730000000002, ...
1999.01.05 02:00:00,1.1808,1.1835,1.1805,1.1822,11.8,1.18206,1.181750000000001, ...
1999.01.05 03:00:00,1.1821,1.1822,1.1808,1.1808,5.0,1.18192,1.182030000000001, ...
1999.01.05 04:00:00,1.1811,1.1815,1.1799,1.1803,3.3,1.18146,1.182000000000001, ...
1999.01.05 05:00:00,1.1804,1.1811,1.1803,1.1811,1.0,1.18122,1.181800000000002, ...
1999.01.05 07:00:00,1.1806,1.1825,1.1795,1.1816,30.1,1.18108,1.181690000000001, ...
1999.01.05 08:00:00,1.1821,1.1833,1.1811,1.182,30.8,1.1812,1.181630000000002, ...
1999.01.05 09:00:00,1.1819,1.1832,1.181,1.1822,36.5,1.18116,1.181540000000002, ...
1999.01.05 10:00:00,1.1814,1.1826,1.181,1.1823,30.9,1.18144,1.181450000000002, ...
1999.01.05 11:00:00,1.1821,1.1823,1.1808,1.182,33.7,1.18184,1.181530000000002, ...
...
Es geht um Kursdaten. (EUR-USD, GBP-USD, EUR-GBP Wechselkurse). Das problem ist jedoch, dass es zu Datumlücken kommt aufgrund der unterschiedlichen Nationen in denen die jeweiligen Börsen liegen. Feiertage die nicht überall vorliegen sind gemeint, wie der 4. July in den USA der in Europa oder Großbritanien nicht gefeiert wird.

somit können verzögerungen nicht nur in den Tages sondern auch stunden vorliegen, da wir ja auch unterschiedliche Zeitzonen haben
(btw die daten oben sind auch in GMT+ irgendwas). Die Zeit würde als Index genutzt.

Nun frage ich euch:
  • 1) gibt es eine möglichkeit die daten an den übereinstimmenden Zeiten in Pandas zusammenzufügen?
  • 2) der erste Dataframe EUR-USD soll dabei keine Daten verlieren... habt ihr eine idee wie ich dann mit Lücken seitens der anderen DF's umgehen kann um trotzdem noch ein sinnvolles gesamt-Dataframe für Machine Learning Zwecke zu haben?

Hinweis:
EURUSD hat 126.698 Zeilen
GBPUSD hat 126613 Zeilen
EURGBP hat 126541 Zeilen

Re: Zeitsequenz Dataframes zusammenführen (jedoch mit Lücken!)

Verfasst: Donnerstag 1. August 2019, 13:30
von __blackjack__
@Bayne: Die Zeitzonen müsste man wissen, und dann erst einmal alle Zeitstempel in *eine* Zeitzone überführen. Sonst kann man die ja schlecht über den Zeitstempel zusammenführen.

Und dann kann man die DataFrames natürlich über die Zeitstempel zusammenführen. Welche Möglichkeiten es da gibt steht in der Pandas-Dokumentation. Zum Beispiel im Benutzerhandbuch im Abschnitt „Merge, join, and concatenate“.

Re: Zeitsequenz Dataframes zusammenführen (jedoch mit Lücken!)

Verfasst: Donnerstag 1. August 2019, 15:09
von Bayne
__blackjack__ hat geschrieben: Donnerstag 1. August 2019, 13:30 @Bayne: Die Zeitzonen müsste man wissen, und dann erst einmal alle Zeitstempel in *eine* Zeitzone überführen. Sonst kann man die ja schlecht über den Zeitstempel zusammenführen.

Und dann kann man die DataFrames natürlich über die Zeitstempel zusammenführen. Welche Möglichkeiten es da gibt steht in der Pandas-Dokumentation. Zum Beispiel im Benutzerhandbuch im Abschnitt „Merge, join, and concatenate“.
Alle Dataframes sind in der gleichen Zeitzone (kommen nämlich alle vom gleichen daher Broker UTC+3 im Sommer und UTC+2 im Winter)

beim zusammenführen wird also automatisch der index beachtet? liegen dann die Einträge welche nur in einem DF vorhanden sind in den darauffolgenden zeilen als 0/nan values vor?

Re: Zeitsequenz Dataframes zusammenführen (jedoch mit Lücken!)

Verfasst: Donnerstag 1. August 2019, 15:13
von __blackjack__
@Bayne: Das kommt drauf an *wie* man die zusammenführt. Wie gesagt, es gibt da Dokumentation zu.