
A expressão regular é para considerar os anos anteriores à 68 como 1968 e não 2068. 2011/4/25 Rodrigo Coster <rcoster@gmail.com>:
É só questão de entrar com o x certo, tem que colocar entre aspas o valor (string) x='21/04/87' (c(Sys.Date() - as.Date(gsub("(\\d{2})$", "19\\1", x), "%d/%m/%Y")) /365.25) %/% 1 [1] 24 Se quiser fugir de expressão regular, da pra fazer assim: x='21/04/87' as.real((Sys.Date() - as.Date(x,'%d/%m/%y'))/365.25) %/% 1 [1] 24
2011/4/25 Mauro Sznelwar <sznelwar@uol.com.br>
Obrigado pelo retorno, mas não foi bem isso, eu transformar 21/04/87 no número de anos até hoje, e alguém deu a sugestão que não consegui implementar x=21/04/87 (c(Sys.Date() - as.Date(gsub("(\\d{2})$", "19\\1", x), "%d/%m/%Y")) /365.25) %/% 1 [1] NA Mauro, tenta assim: x='21/04/87' format(as.Date(x,'%d/%m/%y'),'%Y') [1] "1987" format(as.Date(x,'%d/%m/%y'),'%y') [1] "87"
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
_______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
-- Henrique Dallazuanna Curitiba-Paraná-Brasil 25° 25' 40" S 49° 16' 22" O