Como converter uma data em numérico em r (com exemplos)


Existem dois métodos que você pode usar para converter valores de data em valores numéricos em R:

Método 1: use as.numeric()

 as. numeric (my_date)

Isso retornará o número de segundos que se passaram entre seu objeto de data e 01/01/1970.

Método 2: use funções do pacote lubridate

 library (lubridate)

#get seconds value in date object
second(my_date)

#get minutes value in date object
minute(my_date)

...
#get year value in date object
year(my_date)

Isso retornará o valor de segundos, minutos, anos, etc. do seu objeto de data.

Os exemplos a seguir mostram como usar cada método na prática.

Método 1: use as.numeric()

O código a seguir mostra como converter um objeto de data em numérico usando a função as.numeric() :

 #create date object
my_date <- as. POSIXct ("10/14/2021 5:35:00 PM", format="%m/%d/%Y %H:%M:%S %p")

#view date object
my_date

[1] "2021-10-14 05:35:00 UTC"

#convert date object to number of seconds since 1/1/1970
as. numeric (my_date)

[1] 1634189700

#convert date object to number of days since 1/1/1970
as. numeric (my_date) / 86400

[1] 18914.23

#convert date object to number of years since 1/1/1970
as. numeric (my_date) / 86400 / 365

[1] 51.81982

Com base no resultado podemos ver:

  • Há uma diferença de 1.634.189.700 segundos entre nosso objeto de data e 01/01/1970.
  • Há uma diferença de 18.914,23 dias entre nosso objeto de data e 01/01/1970.
  • Há uma diferença de 51,81982 anos entre nosso objeto de data e 01/01/1970.

Método 2: use funções do pacote lubridate

O código a seguir mostra como converter um objeto de data em numérico usando funções do pacote lubridate em R:

 library (lubridate)

#create date object
my_date <- as. POSIXct ("10/14/2021 5:35:00 PM", format="%m/%d/%Y %H:%M:%S %p")

#view date object
my_date

[1] "2021-10-14 05:35:00 UTC"

#extract various numerical values from date object
second(my_date)

[1] 0

minute(my_date)

[1] 35

hour(my_date)

[1] 5

day(my_date)

[1] 14

month(my_date)

[1] 10

year(my_date)

[1] 2021

Utilizando essas funções podemos extrair os valores de segundos, minutos, horas, dias, meses e anos do nosso objeto data.

Consulte esta folha de dicas on-line para obter uma compreensão completa das funções mais comumente usadas no pacote Lubridate.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras conversões comuns em R:

Como converter uma string para Datetime em R
Como converter números em datas em R
Como classificar um quadro de dados por data em R

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *