Прогноз с сериями данных с QuantMod и пакетом прогнозов

Я новичок в ts и xts object.

При работе с данными временных рядов я столкнулся с проблемой

require(quantmod)
require(forecast)
ticker <- "^GSPC"
getSymbols(ticker, src="yahoo", to = "2013-12-31")
prices <- GSPC[,6]  # First get data using package quantmod
# then forecasting using package forecast
prices.ts <- as.ts(prices)
prices.ets <- ets(prices.ts)
prices.fore <- forecast(prices.ets, h=10)
# then plot
plot(prices.fore, xaxt = "n")

Мои проблемы:

1. Когда я пытался сохранить GSPC с датой в файле csv. Я искал и пробовал это

write.zoo((GSPC, file = "GSPC.csv", sep = ",", qmethod = "double"))

Сообщение об ошибке: Error: unexpected ',' in "write.zoo((GSPC,", Я проверил синтаксис, он кажется правильным, и попробовал другие комбинации. Все не удалось с аналогичным сообщением об ошибке.

также я попытался index(GSPC) узнать дату.

а затем cbind(index(GSPC), GSPC[, 6]). Это тоже не удалось ..

Сообщение об ошибке: Error in merge.xts(..., all = all, fill = fill, suffixes = suffixes) : dims [product 1762] do not match the length of object [3524]

но когда я проверил длину

> length(GSPC[,6])
[1] 1762
> length(index(GSPC))
[1] 1762

2. сюжет такой

введите описание изображения здесь

нет x-lab и y-lab. Я пробовал методы принятого ответа, размещенного здесь,. но не удалось.

В частности, я не понимаю цель следующего кода. Это вроде меняет внешний вид сюжета, но никак не меняет внешний вид. Не знаю, теряю ли я какие-то очки.

a = seq(as.Date("2011-11-01"), by="weeks", length=11)
axis(1, at = decimal_date(a), labels = format(a, "%Y %b %d"), cex.axis=0.6)
abline(v = decimal_date(a), col='grey', lwd=0.5)

Кроме того, я хочу построить график из as.Date («2013-01-01»).

Не могли бы вы дать несколько предложений?

Большое спасибо!


person Bigchao    schedule 20.02.2014    source источник
comment
Вместо того, чтобы говорить, что это не сработало или не удалось, расскажите нам, что это за сообщения об ошибках. Кроме того, бессмысленно говорить «не так, как ожидалось», если вы не описываете то, чего ожидали.   -  person SlowLearner    schedule 20.02.2014
comment
Конечно, @SlowLearner, я сразу же поставлю сообщение об ошибке.   -  person Bigchao    schedule 20.02.2014
comment
@SlowLearner, эй, я изменил сообщение и дал некоторые детали сообщения об ошибке. Не могли бы вы дать какое-нибудь предложение? Большое спасибо!   -  person Bigchao    schedule 20.02.2014


Ответы (1)


  1. У вас есть дополнительные скобки. Использовать

    write.zoo(GSPC, file = "GSPC.csv", sep = ",", qmethod = "double")

    Я не знаю, чего вы пытаетесь достичь с помощью команд index и cbind. index не дает данных. А если вам нужен 6-й столбец GSPC, просто используйте GSPC[,6].

  2. Похоже, у вас нестандартные размеры для черчения. Запустите новое графическое окно, и вы сбросите их до значений по умолчанию. Но вы не получите xlab и ylab, если не укажете их явно. И вы не получите ось x, потому что вы установили xaxt="n"

  3. Вопросы о последнем блоке кода, похоже, вообще не имеют отношения к вашим данным.

person Rob Hyndman    schedule 20.02.2014
comment
Привет, Роб. Большое спасибо за ваши комментарии! Для части построения я поместил ссылку, в исходном сообщении принятый ответ и все остальные ответы имеют такой же блок кода, который я не понимаю, почему ... Кажется, что график не может быть выполнен с использованием ggplot2. Не могли бы вы взглянуть и дать несколько советов о том, как обращаться с участками? Как их указать явно? Большое спасибо! - person Bigchao; 20.02.2014