Como adicionar informações de tempo para datas em r

Muitas vezes, referindo-se apenas a datas em R não é suficiente. Há momentos em que você também precisa indicar um tempo específico em horas e minutos em R.

Para especificar as informações de tempo, além de datas, você pode escolher entre duas funções em R: as.POSIXct () e as.POSIXlt (). Estas duas funções de data e hora diferem na maneira que eles armazenam informações de data internamente, bem como na maneira que você pode extrair de data e hora elementos. (Para saber mais sobre essas duas funções, consulte a barra lateral nas proximidades, “As duas funções de data e hora.”)

POSIX é o nome de um conjunto de normas que se refere ao sistema operacional UNIX. POSIXct refere-se a um tempo que é armazenado internamente como o número de segundos desde o início de 1970, por padrão. (Você pode modificar o ano de origem, definindo o origem argumento para POSIXct ().) POSIXlt refere-se a uma data armazenada como uma lista de nomes de vetores para o ano, mês, dia, horas e minutos.

Segundo a Wikipedia, o tempo da Apollo 11 Lua pouso foi 20 de julho de 1969, em 20:17:39 UTC. (.. UTC é a sigla para Tempo Universal Coordenado É como relógios do mundo são regulados) Para expressar essa data e hora em R, tente o seguinte:

gt; Apolo lt; - "20 de julho, 1969, 20:17:39"gt; apollo.fmt lt; - "% B% d,% Y,% H:% M:% S"gt; XCT lt; - as.POSIXct (Apollo, formato = apollo.fmt, tz ="UTC") Gt; XCT [1] "1969/07/20 20:17:39 UTC"

Como você pode ver, as.POSIXct () leva argumentos semelhantes aos as.Date (), mas você precisa especificar o formato da data, bem como o fuso horário.

FormatoDescrição
% HHoras como um número decimal (00-23)
%EUHoras como um número decimal (01-12)
% HMinutos como um número decimal (00-59)
% SSegundos como um número decimal (00-61)
% pindicador AM / PM


Na maioria das linguagens e sistemas informáticos, as datas são representados por valores numéricos que indicam o número de segundos desde um instante específico no tempo (conhecido como o época).

Em R, você pode usar duas funções para trabalhar com objetos de data e hora: POSIXct () e POSIXlt (). Estas funções criar objetos de POSIXct classe e POSIXlt, respectivamente:

  • POSIXct objetos representa o número (assinado) de segundos desde o início de 1970 (no fuso horário UTC) como um vetor numérico.

  • POSIXlt objetos são nomeados listas de vetores representando nove elementos de uma data e hora (seg, min, hora, e assim por diante).

Porque POSIXct são números, e POSIXlt objetos são listas, POSIXct objetos requer menos memória.

Este resume as principais diferenças entre as diferentes classes de data e hora em R.

ClasseDescriçãoFunções úteis
Encontrodata do calendárioas.Date ()
POSIXctO número de segundos desde o início de 1970 (no UTC
zona de tempo) como um vector numérico
as.POSIXct ()
POSIXltUma lista com o nome de vetores representando nove elementos (seg, min, hora, e assim por diante)as.POSIXlt ()

Publicações relacionadas