[R-br] Converter dias em anos

Fátima Lima Paula fatima.lima.paula em gmail.com
Quarta Fevereiro 13 14:33:30 BRST 2013


Obrigada, Rodrigo.
Vou fazer depois por essa função e ver se vai retornar diferenças.

Em 13 de fevereiro de 2013 13:41, Rodrigo Coster <rcoster em gmail.com>escreveu:

> Dividir por 365.25 nem sempre da certo. Pra isso aconselho usar uma função
> (como a que mando abaixo, que achei na internet e não me recordo aonde)
>
>     age_years <- function(first, second) {
>     lt <- data.frame(first, second)
>     age <- as.numeric(format(lt[,2],format="%Y")) -
> as.numeric(format(lt[,1],format="%Y"))
>     first <-
> as.Date(paste(format(lt[,2],format="%Y"),"-",format(lt[,1],format="%m-%d"),sep=""))
>     age[which(first > lt[,2])] <- age[which(first > lt[,2])] - 1
>     age
>   }
>
>   data1 <- as.Date('28/02/2010','%d/%m/%Y')
>   data2 <-
> as.Date(c('28/02/2011','28/02/2012','28/02/2013','28/02/2014','28/02/2015'),'%d/%m/%Y')
>
>   # Metodo 1
>   floor(as.numeric(data2 - data1)/365.25) # floor que arredonda para
> baixo, nao ceiling
>
>   # Metodo 2
>   age_years(data1,data2)
>
>
>
> 2013/2/12 Fátima Lima Paula <fatima.lima.paula em gmail.com>
>
>> Valeu, Manoel. Depois é só fazer idade=as.integer(idade), né?
>> Obrigada
>>
>> Em 12 de fevereiro de 2013 19:22, Manoel Galdino <mcz.fea em gmail.com>escreveu:
>>
>> transforme em numeric e depois divida por 365.25.
>>>
>>> Manoel
>>>
>>>
>>> as.numeric(idade)/365.25
>>>
>>>
>>>
>>>
>>>
>>> 2013/2/12 Fátima Lima Paula <fatima.lima.paula em gmail.com>
>>>
>>>> Olá pessoal, como passar a diferença entre datas (idade) em dias para
>>>> anos? Já havia feito isso em algum lugar, mas não encontro.
>>>> datanasc=c(19250405,19300809,19400402)
>>>> dataint=c(20080302,20090506,20080104)
>>>> datanasc=as.character(datanasc,"%Y%m%d")
>>>> dataint=as.character(dataint,"%Y%m%d")
>>>> datanasc=as.Date(datanasc,"%Y%m%d")
>>>> dataint=as.Date(dataint,"%Y%m%d")
>>>> idade=dataint-datanasc
>>>> idade
>>>> Time differences in days
>>>> [1] 30282 28760 24748
>>>>
>>>> Agora preciso ter a idade de cada um em anos, com números inteiros.
>>>> Alguém pode me ajudar?
>>>> Obrigada
>>>>  Fátima
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> R-br mailing list
>>>> R-br em listas.c3sl.ufpr.br
>>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
>>>> código mínimo reproduzível.
>>>>
>>>
>>>
>>>
>>> --
>>> Manoel Galdino
>>> https://sites.google.com/site/galdinomcz/
>>>
>>> _______________________________________________
>>> R-br mailing list
>>> R-br em listas.c3sl.ufpr.br
>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
>>> código mínimo reproduzível.
>>>
>>
>>
>> _______________________________________________
>> R-br mailing list
>> R-br em listas.c3sl.ufpr.br
>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
>> código mínimo reproduzível.
>>
>
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> código mínimo reproduzível.
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20130213/5822e5b5/attachment.html>


Mais detalhes sobre a lista de discussão R-br