ПочатиПочніть безкоштовно

Заповнення пропусків за торговельним днем

У попередній вправі останнє спостереження попереднього дня переносилося в перше спостереження наступного дня. У цій вправі ви побачите, як заповнювати пропущені значення за торговельним днем, не використовуючи підсумкове значення попереднього дня.

Ви використаєте ту саму парадигму split-lapply-rbind з курсу Introduction to xts and zoo. Для довідки, шаблон наведено нижче.

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

Пам'ятайте, що синтаксис do.call(rbind, ...) дозволяє передати список об'єктів у rbind() замість того, щоб вводити всі їхні назви.

У вашому робочому середовищі є об'єкт trade_day, який містить регулярний ряд із попередньої вправи, але без жодних заповнених NA.

Ця вправа є частиною курсу

Імпорт і керування фінансовими даними в R

Переглянути курс

Інструкції до вправи

  • Створіть об'єкт daily_list, використавши split() для розбиття даних trade_day на список даних для кожного дня.
  • Тепер застосуйте lapply(), щоб заповнити NA для даних кожного дня у списку daily_list.
  • Нарешті, скористайтеся do.call() та rbind(), щоб перетворити daily_filled на єдиний об'єкт xts з назвою filled_by_trade_day.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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, ___)
Редагувати та запускати код