ComeçarComece de graça

Preencher valores ausentes por dia de negociação

O exercício anterior levou a última observação do dia anterior para a primeira observação do dia seguinte. Este exercício vai mostrar como preencher valores ausentes por dia de negociação, sem usar o valor final do dia anterior.

Você vai usar o mesmo paradigma split-lapply-rbind do curso Introduction to xts and zoo. Para referência, o padrão está abaixo.

x_split <- split(x, f = "months")
x_list <- lapply(x_split, cummax)
x_list_rbind <- do.call(rbind, x_list)

Lembre-se de que a sintaxe do.call(rbind, ...) permite passar uma lista de objetos para rbind() em vez de ter que digitar todos os nomes.

Seu workspace tem um objeto trade_day que contém a série regular do exercício anterior, mas sem nenhum NA preenchido.

Este exercício faz parte do curso

Importando e Gerenciando Dados Financeiros em R

Ver curso

Instruções do exercício

  • Crie um objeto daily_list usando split() para colocar os dados de trade_day em uma lista com os dados de cada dia.
  • Agora use lapply() para preencher os NA dos dados de cada dia na lista daily_list.
  • Por fim, use do.call() e rbind() para converter daily_filled em um único objeto xts chamado filled_by_trade_day.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Split trade_day into days
daily_list <- split(___ , f = "___")

# Use lapply to call na.locf for each day in daily_list
daily_filled <- lapply(___, FUN = ___)

# Use do.call to rbind the results
filled_by_trade_day <- do.call(rbind, ___)
Editar e executar o código