Isto é porque no padrao atual todos os anos reopresetnedos por 2
digitos até 68 sao considertados do século atual
%y
Year without century (00–99). On input, values 00 to 68 are prefixed
by 20 and 69 to 99 by 19 – that is the behaviour specified by the 2004 and
2008 POSIX standards, but they do also say ‘it is expected that in a
future version the default century inferred from a 2-digit year will
change’
Uma solucao é transformar seu vetor strings para anos com 4 digitos e
uma possivel forma de fazer isto segue abaixo
(vou supor que qq ano entre 00 e 12 é do seculo 21 (20??), caso contrário
no 20 (19??)
(ap1 <- strsplit(dates, "/"))
[[1]]
[1] "12" "30" "68"
[[2]]
[1] "12" "31" "68"
[[3]]
[1] "01" "01" "69"
[[4]]
[1] "01" "02" "69"
[[5]]
[1] "02" "01" "92"
(ap2 <- lapply(ap1, function(x) if(x[3] < 12) c(x[1:2], paste("20",
x[3], sep="")) else c(x[1:2], paste("19", x[3], sep=""))))
[[1]]
[1] "12" "30" "1968"
[[2]]
[1] "12" "31" "1968"
[[3]]
[1] "01" "01" "1969"
[[4]]
[1] "01" "02" "1969"
[[5]]
[1] "02" "01" "1992"
(ap3 <- unlist(lapply(ap2, function(x) paste(x, collapse="/"))))
[1] "12/30/1968" "12/31/1968" "01/01/1969" "01/02/1969" "02/01/1992"
as.Date(ap3, "%m/%d/%Y")
[1] "1968-12-30" "1968-12-31" "1969-01-01" "1969-01-02" "1992-02-01"
On Tue, 25 Sep 2012, "Conceição - UNESP Rio Claro, SP" wrote:
Prezados membros,
Saudações,
Estou tendo dificuldade com a conversão de formatos no comando as.Date
(que entendo é diferente do as.date, d minúsculo).
Segue abaixo:
1 - comandos
dates <- c( "12/30/68","12/31/68", "01/01/69", "01/02/69", "02/01/92")
as.Date(dates, "%m/%d/%y") # MÊS/DIA/ANO
Quero transformar para ano = 4 dígitos
2- resultados
dates <- c( "12/30/68","12/31/68", "01/01/69", "01/02/69", "02/01/92")
as.Date(dates, "%m/%d/%y")
[1] "2068-12-30" "2068-12-31" "1969-01-01" "1969-01-02" "1992-02-01"
Para datas anteriores a 31/12/1968 ele transforma o ano 68 em 2068 ao
invés de 1968.
Não sei como resolver.
--
Atenciosamente,
Profa. Dra. Maria da Conceição F. Freitas Tandel
UNESP - IGCE- DEMAC
RIO CLARO, SP
_______________________________________________
R-br mailing list
[email protected]
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
[email protected]
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.