Como adicionar dias a hoje em r (com exemplos)
Você pode usar qualquer um dos seguintes métodos para adicionar um número de dias a uma data em R:
Método 1: Use Base R
#create new column that adds 5 days to date column df$date_plus5 <- as. Date (df$date) + 5
Método 2: Use o pacote Lubridate
library (lubridate) #create new column that adds 5 days to date column df$date_plus5 <- ymd(df$date) + days( 5 )
Os exemplos a seguir mostram como usar cada método com o seguinte quadro de dados:
#create data frame df <- data. frame (date=c('2022-01-03', '2022-02-15', '2022-05-09', '2022-08-10', '2022-10-14', '2022-12-30'), sales=c(130, 98, 120, 88, 94, 100)) #view data frame df dirty dates 1 2022-01-03 130 2 2022-02-15 98 3 2022-05-09 120 4 2022-08-10 88 5 2022-10-14 94 6 2022-12-30 100
Nota : Para subtrair dias de uma data, basta alterar o sinal de adição para o sinal de subtração em uma das fórmulas acima.
Exemplo 1: Adicionar dias a hoje usando Base R
O código a seguir mostra como criar uma nova coluna chamada date_plus5 que adiciona cinco dias a cada uma das datas na coluna de data :
#create new column that adds 5 days to date column
df$date_plus5 <- as. Date (df$date) + 5
#view updated data frame
df
date sales date_plus5
1 2022-01-03 130 2022-01-08
2 2022-02-15 98 2022-02-20
3 2022-05-09 120 2022-05-14
4 2022-08-10 88 2022-08-15
5 2022-10-14 94 2022-10-19
6 2022-12-30 100 2023-01-04
Observe que os valores na nova coluna date_plus5 são iguais aos valores na coluna data mais cinco dias.
Também podemos usar a função class() para confirmar se a nova coluna está no formato de data:
#display class of date_plus5 column
class(df$date_plus5)
[1] “Date”
Exemplo 2: Adicione dias até a data usando o pacote lubridate
O código a seguir mostra como usar as funções ymd() e days() do pacote lubridate para criar uma nova coluna chamada date_plus5 que adiciona cinco dias a cada uma das datas na coluna de data :
library (lubridate)
#create new column that adds 5 days to date column
df$date_plus5 <- ymd(df$date) + days( 5 )
#view updated data frame
df
date sales date_plus5
1 2022-01-03 130 2022-01-08
2 2022-02-15 98 2022-02-20
3 2022-05-09 120 2022-05-14
4 2022-08-10 88 2022-08-15
5 2022-10-14 94 2022-10-19
6 2022-12-30 100 2023-01-04
Os valores na nova coluna date_plus5 são iguais aos valores na coluna data mais cinco dias.
Nota : A função ymd() informa ao pacote lubridate que os valores na coluna de data estão atualmente no formato ano-mês-data.
Consulte a página de documentação do Lubridate para obter mais opções de formatação de data.
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