Umcodieren von Datums-Angaben in ein Datum

Fragen und Diskussionen rund um die Arbeit mit SPSS. Für allgemeine Statistik-Themen, die nicht mit SPSS zusammenhängen, bitte das Statistik-Forum nutzen.
Antworten
ThePhilosopher
Beiträge: 50
Registriert: 15.06.2009, 17:02

Umcodieren von Datums-Angaben in ein Datum

Beitrag von ThePhilosopher »

Hi,

ich habe Daten vorliegen in welchen eine Datumsangabe numerisch codiert wurde. Nun würde ich diese Werte gerne in ein Datum umcodieren, bekomme allerdings immer völlig andere Werte.

Werte liegen so vor (wie gesagt, numerisch) 20110315 (also Jahr, Monat, Tag). Ich kann sie zwar in eine String umwandeln (ohne, dass andere Werte auftauchen), wenn ich die String dann aber in ein Datum umzuwandeln versucht, sind alle Werte verschwunden.

Irgendwer eine Idee?? :-)

LG
TP
drfg2008
Beiträge: 2391
Registriert: 06.02.2011, 19:58

re

Beitrag von drfg2008 »

SPSS nutzt ein Datumsformat, das mit dem Gregoreanischen Kalender beginnt und jede Sekunde seit Beginn dieses Kalenders durchzählt. Sofern würde die direket Umwandlung von Zahl 20110315 in eine Datum 2011-03-15 auch nicht gehen.

Ohne per Syntax den String auseinanderzunehmen und ihn Datumsformat geeignet aufzubereiten wird es kaum gehen.

Das Datum 15.03.2011 beispielsweise ließe sich von String auf Datum setzen.
drfg2008
ThePhilosopher
Beiträge: 50
Registriert: 15.06.2009, 17:02

Beitrag von ThePhilosopher »

Hi und vielen Dank für die Antwort. Das heißt, ich muss die numerische Variable zunächst in eine String umwandeln u. die dann per Syntax "umbauen"?? Aber wie geht das??? Hat jemand evtl. so eine Syntax??

LG
TP
drfg2008
Beiträge: 2391
Registriert: 06.02.2011, 19:58

re

Beitrag von drfg2008 »

Code: Alles auswählen

*Achtung: Dieser Teil erzeugt nur Beispielsdaten.

DATA LIST FREE / alteDatumsvariable.
BEGIN DATA
20110315
20110316
20110317
20110318
20110319
20110320
20110321
20110322
20110323
20110324
20110325
20110326
20110327
20110328
20110329
20110330
END DATA.
EXECUTE.

*Hier geht's los: .

RENAME VARIABLES alteDatumsvariable = V1.

STRING V2 (A8). 
STRING NeuesDatum (A10).
COMPUTE V2 = STRING(v1, F8.0). 
EXECUTE.

COMPUTE NeuesDatum = CONCAT(SUBSTR(v2,7,2),".",SUBSTR(v2,5,2),".",SUBSTR(v2,1,4)).
EXECUTE.

ALTER TYPE  NeuesDatum (A10 = DATE11).
drfg2008
ThePhilosopher
Beiträge: 50
Registriert: 15.06.2009, 17:02

Beitrag von ThePhilosopher »

Hey, vielen Dank! Genau sowas habe ich gesucht ! ! ! !

LG
TP
Anzeige:Statistik und SPSS: Die besten Bücher
Als Buch oder E-Book - Jetzt bestellen
spss datenanalyse
SPSS - Moderne Datenanalyse - Jetzt bestellen!
statistik datenanalyse
Statistik - Der Weg zur Datenanalyse - Jetzt bestellen!
Antworten