Zeichenfolgenvariable in Datum ändern

Alles rund um SPSS Syntax und Programmierung.

Zeichenfolgenvariable in Datum ändern

Beitragvon Arnostone » Do 2. Mai 2024, 12:21

Hallo,
ich komme nicht weiter: In einem SPSS-Datensatz habe ich eine Variable v2 im Textformat "MM.YYYY" (also z.B. "02.2023" usw.). Bei Auswertungen sind die Inhalte allerdings nicht in Reihenfolge des Monats, da eben Text.
Ich kann zwar im Dateieditor das Format per Hand in Datum "MM.YYYY" ändern, dann ist es ok. Wie mache ich das gleiche aber per Syntax, so dass man es "durchlaufen" lassen kann?
Arnostone
 
Beiträge: 3
Registriert: Do 2. Mai 2024, 12:17
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Zeichenfolgenvariable in Datum ändern

Beitragvon ponderstibbons » Do 2. Mai 2024, 13:31

Angelehnt an https://www.ibm.com/support/pages/conve ... ormat-spss

STRING jahr (a2).
COMPUTE jahr=CHAR.SUBSTR(v2,4,4).
STRING monat (a2).
COMPUTE monat=CHAR.SUBSTR(v2,1,2).
COMPUTE jahr2 = number(jahr,F4.0).
COMPUTE monat2 = number(monat,F2.0).
COMPUTE newdate = DATE.MOYR(monat2,jahr2).
EXECUTE .
FORMATS newdate (MOYR8).

Ein Zeitformat 02.2023 statt FEB 2023 existiert in SPSS m.W. nach nicht.


HTH

PonderStibbons
ponderstibbons
 
Beiträge: 2519
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 2
Danke bekommen: 257 mal in 256 Posts

Re: Zeichenfolgenvariable in Datum ändern

Beitragvon Arnostone » Do 2. Mai 2024, 13:32

Ich mache das jetzt mit ALTER TYP xxx (MOYR). Wenn jemand eine bessere Idee hat, freue ich mich.
Zuletzt geändert von Arnostone am Do 2. Mai 2024, 13:33, insgesamt 1-mal geändert.
Arnostone
 
Beiträge: 3
Registriert: Do 2. Mai 2024, 12:17
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Zeichenfolgenvariable in Datum ändern

Beitragvon Arnostone » Do 2. Mai 2024, 13:33

ponderstibbons hat geschrieben:Angelehnt an https://www.ibm.com/support/pages/conve ... ormat-spss

STRING jahr (a2).
COMPUTE jahr=CHAR.SUBSTR(v2,4,4).
STRING monat (a2).
COMPUTE monat=CHAR.SUBSTR(v2,1,2).
COMPUTE jahr2 = number(jahr,F4.0).
COMPUTE monat2 = number(monat,F2.0).
COMPUTE newdate = DATE.MOYR(monat2,jahr2).
EXECUTE .
FORMATS newdate (MOYR8).

Ein Zeitformat 02.2023 statt FEB 2023 existiert in SPSS m.W. nach nicht.


Danke! Meine ANtwort hat sich überschnitten :-)
Arnostone
 
Beiträge: 3
Registriert: Do 2. Mai 2024, 12:17
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Zeichenfolgenvariable in Datum ändern

Beitragvon strukturmarionette » Do 2. Mai 2024, 13:59

Hi,

am einfachsten die SPSS-Datendatei per SPSS-Dialogfeld nach der bestehenden Variable sortieren lassen

Gruß
S.
strukturmarionette
 
Beiträge: 2499
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 7
Danke bekommen: 122 mal in 122 Posts


Zurück zu SPSS Syntax

Wer ist online?

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

cron