2017-01-13 1 views
0

j'ai une base de données volumineuse avec plusieurs types de données, par exemple:ans de calcul de dates R

  • Une date de la variable de naissance au format jj/mm/aaaa
  • Une date variable de rencontre avec le sujet au format jj/mm/aaaa

Je dois créer une nouvelle variable de me donner l'âge du sujet au cours des années au moment de la réunion (basée sur 365,25 jours par an)

Chacun des t il deux variables, POSIXlt [1: 1],

Format: NA à la fonction str()

Comment puis-je résoudre ce problème?

+1

Nous ne pouvons pas vraiment aider ici à moins que vous nous dire ce que la base de données est - un fichier CSV, une base de données SQL? L'avez-vous déjà lu dans R? Comment? Pouvez-vous nous montrer les premières lignes? Montrez-nous la sortie de 'summary()' sur vos données? Cela aiderait! – Spacedman

+0

Convertissez les deux dates en julian. Soustrayez-les. Puis diviser par 365.25 – Marichyasana

Répondre

0

Essayez ceci:

d1 = as.Date("20/11/2016", format="%d/%m/%Y") 
d2 = as.Date("13/01/1995", format="%d/%m/%Y") 
d3 = as.numeric(difftime(d1,d2),unit="days") 
d4 = d3/365.25 
print(d4) 

Sortie: 21,85352