4 stündige Zeiteinteilung der Zeitvariable "time series"

Fragen zu Stata Syntax und Do-Files.

4 stündige Zeiteinteilung der Zeitvariable "time series"

Beitragvon Mirko05 » Di 27. Nov 2012, 14:54

Hallo an Alle!

ich bin dabei meine Masterarbeit über den Regelenergiemarkt in Deutschland zu schreiben.
Regelenergie wird in 4 stündigen Zeitscheiben. Also würde es Sinn machen, die Zeiteinteilung entsprechend vorzunehmen.

Ich habe das auch schon hinbekommen, so dass das alles optisch schön aussah. Ich bin dabei folgendermaßen vorgegangen:
Ich habe das Datum jeweils wiederholt in excel und das ganze für ein Jahr. 6*364 = 2184 Somit hat mein Datensatz 2184 Fälle.
Als nächstes habe ich dann die Stunden, Minuten und Sekunden genereiert und alles zusammengefügt:

gen hour = 4*mod(_n-1,6) + 0
gen minute = 0
gen double datevariable = dhms(date,hour,0,0)

Das ganze sah auch im Datensatz optisch super aus. Leider konnte ich damit nichts anfangen, da er sagt, dass die Zeitvariable lücken hat. Ich vermute aufgrund der Sekunden.
:cry:

Weiß jemand wie ich eine Zeitvariable erstelle die folgendermaßen aussieht?

01.09.2011 00:00
01.09.2011 04:00
01.09.2011 08:00
01.09.2011 12:00
01.09.2011 16:00
01.09.2011 20:00
next day
02.09.2011 00:00
02.09.2011 04:00
02.09.2011 08:00
02.09.2011 12:00
02.09.2011 16:00
02.09.2011 20:00
bis zum
31.08.2012 00:00
31.08.2012 04:00
31.08.2012 08:00
31.08.2012 12:00
31.08.2012 16:00
31.08.2012 20:00

Viele Grüße
Mirko
Mirko05
 
Beiträge: 8
Registriert: Di 27. Nov 2012, 14:40
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: 4 stündige Zeiteinteilung der Zeitvariable "time series"

Beitragvon daniel » Di 27. Nov 2012, 16:19

Ich bin kein großer Fan von Excel, aber wenn Du bereits etwas in der Art

Code: Alles auswählen
01.09.2011 00:00
01.09.2011 04:00
[...]


vorliegen hast, dann kopier das als string Variable, sagen wir <var1>, in Stata. Der code

Code: Alles auswählen
g double foo = Clock(<var1>, "DMYhm")


wandelt es in eine zeit Variable um (siehe -help dates-). Um das Datum/Zeit 2sehen" zu können solltest Du die Zeile

Code: Alles auswählen
form foo %tC


tippen.

Hier ein Beispiel

Code: Alles auswählen
clear
inp str16 var1
"01.09.2011 00:00"
"02.09.2011 04:00"
"03.04.2011 08:00"
end
l
g double foo = Clock(var1, "DMYhm")
l
form foo %tC
l
Stata is an invented word, not an acronym, and should not appear with all letters capitalized: please write “Stata”, not “STATA”.
daniel
 
Beiträge: 1060
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: 4 stündige Zeiteinteilung der Zeitvariable "time series"

Beitragvon Mirko05 » Di 27. Nov 2012, 17:35

Vielen Dank Daniel!

Das Problem entsteht erst jetzt, genau an diesem Punkt.

tsset foo
time variable: foo, 03apr2011 08:00:00 to 02sep2011 04:00:00
but with gaps
delta: .001 seconds

Die Variable hat nun "gaps" aufgrund der Rundungsprobleme der Sekunden. Gibt es irgendeine Möglichkeit dieses Problem zu umgehen.
Heißt, man defeniert die Variable als Zeitvariable ohne gaps.

Viele Grüße
Mirko
Mirko05
 
Beiträge: 8
Registriert: Di 27. Nov 2012, 14:40
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: 4 stündige Zeiteinteilung der Zeitvariable "time series"

Beitragvon daniel » Di 27. Nov 2012, 17:44

Bevor Du darüber nachdenkst, solltest Du sicher sein, dass Dich die gaps stören. Ist das der Fall?
Stata is an invented word, not an acronym, and should not appear with all letters capitalized: please write “Stata”, not “STATA”.
daniel
 
Beiträge: 1060
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: 4 stündige Zeiteinteilung der Zeitvariable "time series"

Beitragvon Mirko05 » Di 27. Nov 2012, 17:47

die "gaps" sorgen dafür, dass ich keine Regression usw. durchführen kann.
Mirko05
 
Beiträge: 8
Registriert: Di 27. Nov 2012, 14:40
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: 4 stündige Zeiteinteilung der Zeitvariable "time series"

Beitragvon daniel » Di 27. Nov 2012, 18:11

Hm. Ich muss zugeben, ich bin etwas verwirrt darüber, dass hier überhaupts gaps entstehen. Versuch mal mit -tsfill- die gaps zu füllen. Vielleicht funktionert das, was ich aber bezweifele.

Möglicher Weise wäre ein post auf Statalist das richtige (unbedingt die FAQs lesen bevor Du postest).
Stata is an invented word, not an acronym, and should not appear with all letters capitalized: please write “Stata”, not “STATA”.
daniel
 
Beiträge: 1060
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: 4 stündige Zeiteinteilung der Zeitvariable "time series"

Beitragvon Mirko05 » Mi 5. Dez 2012, 09:23

Der Trick ist: tsset foo, delta(4 hours) :)
Dann hat man keine gaps aber in den Grafiken sieht es nicht so schön aus.

Kann mir jemand hier bei einer theoretischen Frage helfen?
Ich habe immer Survey data bearbeitet und nun in meiner Masterarbeit habe ich es mit Zeitreihen zu tun.
Ich will keine Vorhersagen machen sondern nur zusammenhänge aufzeigen. Kann ich da nicht ganz normale eine Regression laufen lassen?
Klar habe ich dann keine Stationärität und Autocorrelation. Aber die Daten habe ich mir ja nicht ausgedacht, das sind die realen Beobachtungen.
Ich kenne die Prais-Regression. Weißer aber nicht genau was die macht?
Kann mir hier jemand etwas weiter helfen?
Mirko05
 
Beiträge: 8
Registriert: Di 27. Nov 2012, 14:40
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: 4 stündige Zeiteinteilung der Zeitvariable "time series"

Beitragvon daniel » Mi 5. Dez 2012, 13:23

Hm. Ich hatte das mit der -gaps- Option versucht, und hatte keine Erfolg. Vieleicht hab ich was falsch gemacht. Nun ja das problem scheint gelöst.

Poste das neue Problem mal im oben verlinkten Statistikforum, ich denke da sind die Chancen auf Hilfe besser.

Ich habe mit Zeitreichen nicht allzuviel gemacht, aber die Annahmen des klassischen linearen Modells (Gauss-Markov) fragen nicht danach, ob Du die Daten "erfunden" hast, oder ob das "echte" Daten sind (was auch immer Du damit ausdrücken woltest). Die Annahme der nicht autokorrelierten Fehler ist in Zeitreichen sicher verletzt. Ohne Korrekturen wird ein "naiver" OLS (hier als Synonym für das klassische lineare Regressionsmodell) Ansatz vermutlich zu falschen Schlussfolgerungen führen.
Stata is an invented word, not an acronym, and should not appear with all letters capitalized: please write “Stata”, not “STATA”.
daniel
 
Beiträge: 1060
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post


Zurück zu Stata Syntax

Wer ist online?

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