Zeitreihenanalyse mit nicht äquidistanten Zeitintervallen

Fragen, die sich auf kein spezielles Verfahren beziehen.

Zeitreihenanalyse mit nicht äquidistanten Zeitintervallen

Beitragvon ichduersiees » So 9. Apr 2017, 10:30

Hallo zusammen, ich habe Zeitreihendaten die ich analysieren möchte. Meine Unizeit ist schon bisschen her und ich muss mich jetzt wieder eindenken.
Die Challenge dabei ist, dass meine Zeitreihe auf der Zeitachese keine äudistanten Datenpunkte hat, d.h. Die Datenreihe sieht so aus:
(13:05:57;23), (13:11:02;27), (13:57:03;18). Der Wert 23 ist also von 13:05:57 bis 13:11:02 gültig etc.
Ich Frage mich nun, wie man das effizient analysieren kann? Ich könnte natürlich für jeden Datenpunkt die Dauer ausrechnen und diesen dann gewichten etc...will ich aber aus diversen Gründen vermeiden. Ich kann die Quelldatenbank nicht modifizieren usw

Es müsste aber doch eig in R und Co Funktionen geben, die solche Zeitreihen automatisch analysieren, oder? hat da jemand Erfahrung und kann mich in die richtige Richtung leiten?

Bin für jeden Tip dankbar!
ichduersiees
Grünschnabel
Grünschnabel
 
Beiträge: 4
Registriert: So 9. Apr 2017, 10:14
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Zeitreihenanalyse mit nicht äquidistanten Zeitintervalle

Beitragvon strukturmarionette » Mo 10. Apr 2017, 07:28

Hi,

und kann mich in die richtige Richtung leiten?

- Wie lautet Thema Fragestellung und Variablenbeschreibung?

Es müsste aber doch eig in R und Co Funktionen geben

- Hmm?

Gruß
S.
strukturmarionette
Schlaflos in Seattle
Schlaflos in Seattle
 
Beiträge: 4353
Registriert: Fr 17. Jun 2011, 22:15
Danke gegeben: 32
Danke bekommen: 586 mal in 583 Posts

Re: Zeitreihenanalyse mit nicht äquidistanten Zeitintervalle

Beitragvon ichduersiees » Mo 10. Apr 2017, 08:30

Hi, danke für deine Antwort.
Variablen sind Zeit und Wert - erst mal allgmein.
Wert könnte sein:
-quantitativ: eine Drehzahl, Temperatur, Leistungsaufnahme
-qualitativ: z.B. ein Status
...alles was eine Maschine so liefern kann. Wenn sich der Wert ändert (es gibt hier immer Schwellenwerte --> diskret) bekommen ich eine Notifiaction. Letztendlich also eine Stufenfunktion

Fragestellung ist: Mittelwert, Median, Min/Max nach Zeitraum, ggfs auch Saisonalitäten bzw. Anteile.
Also z.b. mittlere Leistungsaufnahme der letzen Woche - Frühschicht gegen Spätschicht vergleichen
Order Prozentsatz der Zeit die die Maschine in der lezten Woche Störung gesendet hat.

Hilft das weiter? Ich möchte halt gerne vermeiden die Daten hier mit zufälligen Daten(punkten) anzureichern weil das dann echt viel wird...die Maschine wird 1 mal pro Sekunde abgetastet...und ich plane mehr Maschinen zu erfassen...
ichduersiees
Grünschnabel
Grünschnabel
 
Beiträge: 4
Registriert: So 9. Apr 2017, 10:14
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Zeitreihenanalyse mit nicht äquidistanten Zeitintervalle

Beitragvon strukturmarionette » Mo 10. Apr 2017, 10:58

Hi,

Hilft das weiter?

- nee. mir zumindest nicht. ist alles mögliche reinzunterpretieren.

S.
strukturmarionette
Schlaflos in Seattle
Schlaflos in Seattle
 
Beiträge: 4353
Registriert: Fr 17. Jun 2011, 22:15
Danke gegeben: 32
Danke bekommen: 586 mal in 583 Posts

Re: Zeitreihenanalyse mit nicht äquidistanten Zeitintervalle

Beitragvon ichduersiees » Mo 10. Apr 2017, 11:18

nehmen wir ein simples Praxisbeispiel, welches die gleiche Struktur hat: Benzinpreis
um 7:30h bekommst du die Mitteilung, dass Benzin 1,30 kostet
um 9h bekommst du die Mitteilung, dass Benzin 1,40 kostet
um 10h bekommst du die Mitteilung, dass Benzin 1,25 kostet
um 11h bekomsmt du die Mitteilung, dass Benzin 1,45 kostet

In der Datenbank sind genau die 4 Datenpunkte gespeichert: Spalte 1 Zeit, Spalte 2 Preis

D.h. zwischen 7:30h und 9h beträgt der Preis konstant 1,30, zwischen 9h und 10:00h 1,40 usw

Fragestellung: was war der Durchschnittspreis im Intervall 8:30h bis 10:45h?
Ich müsste jetzt hier die Gewichtungen ausrechnen: (09:00-08:30h)*1,30 + (10h-9h) * 1,40 + (10:45h-10h) * 1,25 usw

Frage mich, ob man sowas automatisch analysieren kann oder ob man sich das selbst programmieren muss?
ichduersiees
Grünschnabel
Grünschnabel
 
Beiträge: 4
Registriert: So 9. Apr 2017, 10:14
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Zeitreihenanalyse mit nicht äquidistanten Zeitintervalle

Beitragvon bele » Mo 10. Apr 2017, 16:20

Hallo,

Du suchst also nicht nach einer spezifischen Funktion, sondern generell nach einem Framework, dass die Arbeit mit solchen Zeitreihen in R einfacher macht. Dazu zwei entsprechend generelle Hinweise: Ich habe den Eindruck, dass sich unendlich viele Dinge in R leichter rechnen lassen mit dem Package zoo. Vignetten und Manual findest Du erwartungsgemäß unter: https://cran.r-project.org/package=zoo

Natürlich gibt es unendlich viele Fragestellungen, die man auf Zeitreihen anwenden kann und erwartungsgemäß unüberschaubar viele Pakete für R. Erfreulicherweise gibt es CRAN Task Views, in denen ein fachkundiger Autor oder ein Autorenteam eine Auswahl der relevantesten zusammenstellt. So einen Task View gibt es auch zu Zeitreihen. Das für Dich passende zu finden, wird Dich trotzdem einiges an Zeit kosten:
https://cran.r-project.org/web/views/TimeSeries.html

In Deinem Tankstellenbeispiel könnte man sich die Daten als Punkte in einer Zeitreihe mit 5 Minuten Abständen denken, wobei jede Nicht-Meldung einem NA-entspricht. Diese NAs jeweils mit dem letzten Wert (soll ja konstant sein) auffüllen kann zoo mit der Funktion na.locf ("last observation carried forward"). Danach ließe sich dann einfach der Mittelwert via mean errechnen. (Anwendungsbeispiel na.locf und andere zoo Funktionen in https://cran.r-project.org/web/packages ... ickref.pdf )

Wenn Du weitere Fragen spezifisch zu R hast, ist vielleicht ein [url=forum.r-statistik.de]R-Forum[/url] besser geeignet, als ein allgemeines Statistik-Forum. Allgemeine Fragen, nicht zu einem bestimmten Programm, sind dagegen hier richtig.

LG,
Bernhard
----
`Oh, you can't help that,' said the Cat: `we're all mad here. I'm mad. You're mad.'
`How do you know I'm mad?' said Alice.
`You must be,' said the Cat, `or you wouldn't have come here.'
(Lewis Carol, Alice in Wonderland)
bele
Schlaflos in Seattle
Schlaflos in Seattle
 
Beiträge: 5920
Registriert: Do 2. Jun 2011, 23:16
Danke gegeben: 16
Danke bekommen: 1401 mal in 1387 Posts

Re: Zeitreihenanalyse mit nicht äquidistanten Zeitintervalle

Beitragvon ichduersiees » Di 11. Apr 2017, 20:32

Hi Bernhard, danke für die Antwort.
Bin nicht auf R festgelegt, war nur so eine Idee weil es da ja schoan viel gibt.
Was ich halt vermeiden wollte ist die zusätzlichen Dantepunkte zu erzeugen, weil das dann sehr schnell zu sehr vielen Daten führt und die Berechnung dann dauert. Und wenn man das in Echtzeit machen will, dann ist das bissle unschön.
Were aber dann wohl zweigleiseig fahren müssen. Eine einfache Methode für Mittelwerte etc - alles was man in Echtzeit benötigt und dann vllt doch eine Methode mit mehr Datenpunkten für die komplexeren Analysen die man auch "offline" machen kann...
Falls noch jemand Ideen für ein Framework/Tool hat - immer her damit ;-)
ichduersiees
Grünschnabel
Grünschnabel
 
Beiträge: 4
Registriert: So 9. Apr 2017, 10:14
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Zeitreihenanalyse mit nicht äquidistanten Zeitintervalle

Beitragvon bele » Mi 12. Apr 2017, 15:58

ichduersiees hat geschrieben:(13:05:57;23), (13:11:02;27), (13:57:03;18). Der Wert 23 ist also von 13:05:57 bis 13:11:02 gültig etc.

Was ich halt vermeiden wollte ist die zusätzlichen Dantepunkte zu erzeugen, weil das dann sehr schnell zu sehr vielen Daten führt und die Berechnung dann dauert. Und wenn man das in Echtzeit machen will, dann ist das bissle unschön.


Das sind sekundengenaue Daten, die in diesem Fall etwa eine Stunde umfassen. R wird ja von 60*60=3600 Datenpunkte in weniger als einer Sekunde locf interpolieren und daraus einen Mittelwert bilden können. Ich weiß nicht, was Du da sonst noch alles rechnen willst, um welche Datenmengen und welche Zeiträume es Dir da geht und ob das auf einem Hochleistungsrechner oder auf einem Raspi laufen soll, aber das klingt jetzt doch nach premature optimization.

"We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%. A good programmer will not be lulled into complacency by such reasoning, he will be wise to look carefully at the critical code; but only after that code has been identified" — Donald Knuth (Structured Programming with Goto Statements. Computing Surveys 6:4 (1974), 261–301.)


LG,
Bernhard
----
`Oh, you can't help that,' said the Cat: `we're all mad here. I'm mad. You're mad.'
`How do you know I'm mad?' said Alice.
`You must be,' said the Cat, `or you wouldn't have come here.'
(Lewis Carol, Alice in Wonderland)
bele
Schlaflos in Seattle
Schlaflos in Seattle
 
Beiträge: 5920
Registriert: Do 2. Jun 2011, 23:16
Danke gegeben: 16
Danke bekommen: 1401 mal in 1387 Posts


Zurück zu Allgemeine Fragen

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 16 Gäste