Skip to content

Instantly share code, notes, and snippets.

@wilsonfreitas
Created April 21, 2021 12:59
Show Gist options
  • Save wilsonfreitas/8a42d45086c39b50697e546bae87ee0e to your computer and use it in GitHub Desktop.
Save wilsonfreitas/8a42d45086c39b50697e546bae87ee0e to your computer and use it in GitHub Desktop.
Dúvida

Estou com dúvida em um tratamento aqui no R. Tenho um data frame que tem 3 colunas: data pregão, cód negociação ativo objeto e variação preço fechamento D0 x D-1. A partir dessas datas, o gostaria de incluir nesse data frame 5 datas úteis anteriores a cada uma dessas datas.

Vc tem alguma dica de como poderia fazer?

Tentei usar Index mas ele funciona bem para 1 data, agora quando temos várias datas...tentei um for tb mas não dei certo ainda....

library(bizdays)
library(tidyverse)
df <- tribble(
~"DATA", ~"ATIVO",
"2020/11/10", "PETR4",
"2020/11/12", "VALE3",
"2020/11/17", "BBDC4",
"2020/11/19", "ITUB4",
"2020/11/26", "GGBR4",
) %>%
mutate(DATA = as.Date(DATA))
df %>% View()
df2 <- df %>% group_split(ATIVO) %>%
map_dfr(function(x) {
dates <- bizseq(offset(x$DATA, -6, "Brazil/ANBIMA"), x$DATA, "Brazil/ANBIMA")
tibble(
DATA = dates,
ATIVO = x$ATIVO
)
})
df2 %>% View()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment