Ошибка настройки OHLC: несовместимый массив

Пожалуйста, попробуйте загрузить временные ряды "LOW" с Yahoo и после использовать функцию adjustOHLC

library(quantmod)
data.env <- new.env()
getSymbols("LOW", src='yahoo', from='1970-01-01', env=data.env)
data.env[["LOW"]] <- adjustOHLC(data.env[["LOW"]], use.Adjusted=TRUE)

Я получаю сообщение об ошибке: Error in `-.default`(Lo(x), Cl(x)) : non-conformable arrays. Можете ли вы помочь мне понять, почему?


person Fryc    schedule 10.11.2013    source источник


Ответы (1)


Это вызвано известной проблемой с функцией Lo для данных по акциям Лоу (" НИЗКИЙ").

Простой обходной путь — удалить «НИЗКИЙ». префикс из имен столбцов.

colnames(data.env$LOW) <- gsub("^LOW\\.","",colnames(data.env$LOW))
data.env$LOW <- adjustOHLC(data.env$LOW, use.Adjusted=TRUE)
person Joshua Ulrich    schedule 10.11.2013
comment
Спасибо за ваше решение @Joshua Ulrich, столкнулся с тем же вопросом, разве это не должно быть отлажено разработчиком пакета? - person Jason Goal; 04.04.2018
comment
@JasonGoal: это известная проблема без простого решения. Что вы подразумеваете под отладкой разработчиком пакета? Если вы имеете в виду исправленное, то трудно представить, сколько возможных вариантов использования вы можете сломать, пытаясь решить эту одну проблему. Как разработчик пакетов, я не люблю ломать рабочий код людей... - person Joshua Ulrich; 04.04.2018
comment
Я имею в виду, просто добавьте простое решение в adjustOHLC, чтобы никто не столкнулся с этим в первую очередь. - person Jason Goal; 04.04.2018