Чтение внутридневных данных с помощью getSymbols.csv
Я установил пакет quantmod и пытаюсь импортировать csv-файл с данными за 1 минуту в течение дня. Вот пример файла GAZP.csv:
"D";"T";"Open";"High";"Low";"Close";"Vol"
20130902;100100;132.2000000;133.0500000;131.9200000;132.5000000;131760
20130902;100200;132.3700000;132.5700000;132.2500000;132.2900000;66090
20130902;100300;132.3600000;132.5000000;132.2600000;132.4700000;37500
Я пробовал:
> getSymbols('GAZP',src='csv')
Error in `colnames<-`(`*tmp*`, value = c("GAZP.Open", "GAZP.High", "GAZP.Low", :
length of 'dimnames' [2] not equal to array extent
> getSymbols.csv('GAZP',src='csv')
> # or
> getSymbols.csv('GAZP',env,dir="c:\\!!",extension="csv")
Error in missing(verbose) : 'missing' can only be used for arguments
Как правильно использовать getSymbols.csv
Команда для чтения таких данных?
1 ответ
@Vladimir, если вы не настаиваете на использовании функции "getSymbols" из пакета quantmod, вы можете импортировать ваш CSV-файл (если он находится в вашем рабочем каталоге) как объект zoo со строкой:
GAZP=read.zoo("GAZP.csv",sep=";",header=TRUE,index.column=list(1,2),FUN = function(D,T) as.POSIXct(paste(D, T), format="%Y%m%d %H%M%S"))
и преобразовать его в объект XTS, если хотите.
GAZP.xts <- as.xts(GAZP)
> GAZP
Open High Low Close Vol
2013-09-02 10:01:00 132.20 133.05 131.92 132.50 131760
2013-09-02 10:02:00 132.37 132.57 132.25 132.29 66090
2013-09-02 10:03:00 132.36 132.50 132.26 132.47 37500