R: como converter um caractere em uma data usando lubridate


Você pode usar várias funções do pacote lubridate em R para converter uma coluna de caracteres em formato de data.

Duas das funções mais comuns incluem:

  • ymd() – Converte caracteres no formato ano-mês-data para a data
  • mdy() – Converte caracteres no formato mês-dia-ano para a data

Os exemplos a seguir mostram como usar as funções ymd() e mdy() na prática.

Nota : Consulte a documentação do Lubridate para obter uma lista completa de funções que você pode usar para converter caracteres em datas com base no formato em que suas datas estão.

Exemplo 1: Converter caractere em data usando ymd()

Suponha que temos o seguinte quadro de dados em R:

 #create data frame
df <- data. frame (date=c('2022-01-05', '2022-02-18', '2022-03-21',
                        '2022-09-15', '2022-10-30', '2022-12-25'),
                 sales=c(14, 29, 25, 23, 39, 46))

#view data frame
df

        dirty dates
1 2022-01-05 14
2 2022-02-18 29
3 2022-03-21 25
4 2022-09-15 23
5 2022-10-30 39
6 2022-12-25 46

#view class of date column
class(df$date)

[1] “character”

Atualmente, os valores na coluna de data são caracteres, mas podemos usar a função ymd() do pacote lubridate para convertê-los em datas:

 library (lubridate)

#convert character to date format
df$date <- ymd(df$date)

#view updated data frame
df

        dirty date
1 2022-01-05 14
2 2022-02-18 29
3 2022-03-21 25
4 2022-09-15 23
5 2022-10-30 39
6 2022-12-25 46

#view updated class of date column
class(df$date)

[1] “Date”

Podemos ver que a coluna de data agora possui uma classe Date em vez de Character.

Exemplo 2: Converter caractere em data usando mdy()

Suponha que temos o seguinte quadro de dados em R:

 #create data frame
df <- data. frame (date=c('March 4, 2022', 'April 9, 2022', 'May 6, 2022',
                        'May 29, 2022', 'June 1, 2022', 'July 2, 2022'),
                 sales=c(14, 29, 25, 23, 39, 46))

#view data frame
df

           dirty date
1 March 4, 2022 14
2 April 9, 2022 29
3 May 6, 2022 25
4 May 29, 2022 23
5 June 1, 2022 39
6 July 2, 2022 46

#view class of date column
class(df$date)

[1] “character”

Atualmente, os valores da coluna de data são caracteres, mas podemos usar a função mdy() do pacote lubridate para convertê-los em datas:

 library (lubridate)

#convert character to date format
df$date <- mdy(df$date)

#view updated data frame
df

        dirty dates
1 2022-03-04 14
2 2022-04-09 29
3 2022-05-06 25
4 2022-05-29 23
5 2022-06-01 39
6 2022-07-02 46

#view updated class of date column
class(df$date)

[1] “Date”

Podemos ver que a coluna de data agora possui uma classe Date em vez de Character.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em R:

Como converter uma data em numérico em R
Como extrair mês da data em R
Como adicionar e subtrair meses a uma data em R

Add a Comment

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