Question

J'ai des horodatages dans une colonne que j'ai importée dans SPSS.Exemple, 7/6/2011 2:21 dans une colonne appelée 'Observation'

Ceci est au format chaîne.Maintenant, j'ai également des corrections de fuseau horaire pour ces données.Donc, -60 signifierait soustraire 60 minutes de cette date.

Comment procéder avec la syntaxe SPSS?

Était-ce utile?

La solution

Il existe des formats de date natifs dans SPSS, mais il ne semble malheureusement pas que l'un d'entre eux couvre l'exemple que vous avez publié.J'analyserais le début du champ de chaîne pour séparer le mm/dd/yyyy et la partie hh:mm, les convertir dans leurs formats d'heure représentatifs, puis effectuer les calculs de temps.

Pour un exemple

data list fixed / observation (A25).
begin data
7/6/2011 2:21
10/11/2011 15:42
07/06/2011 02:21
3/15/2011 0:21
end data.

*getting the data part, assuming the space will always delimit the two parts.
compute #space = char.index(observation," ").
string date (A10).
compute date = char.substr(observation,1,#space-1).
*getting the time part.
string time (A5).
compute time = char.substr(observation,#space+1,5).
execute.

*now converting them into date formats.
alter type date (A10 = ADATE10).
alter type time (A5 = TIME5).
*you should check these carefully to make sure they were converted correctly.
*now making one time variable.
compute date_time = date + time.
formats date_time (DATETIME17).
execute.

*now it is just as simple as subtracting the specified value.
compute date_time_adj = DATESUM(date_time,-60,"minutes").
execute.
formats date_time_adj (DATETIME17).
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top