如何在quantmod中处理诸如GC = F之类的特殊符号

问题描述

如何在quantmod中处理特殊符号,例如GC = F。 GC = F是雅虎中黄金的符号。下面的示例:

库(quantmod)

getSymbols(“ ^ GSPC”)#这将返回商品代码GSPC和股票数据

getSymbols(“ GC = F”)#这根本不起作用,返回缺少的值

解决方法

我没看到任何问题。运行以下代码将返回最近几天的数据。 10月4日那里缺少一个值,该值与yahoo页面上的数据一致,如here所示。所有丢失的数据点都是星期天。如果要删除这些记录,可以使用na.exclude或使用功能删除所有周末。

library(quantmod)

gold <- getSymbols("GC=F",auto.assign = FALSE,from = "2020-10-01")
gold

           GC=F.Open GC=F.High GC=F.Low GC=F.Close GC=F.Volume GC=F.Adjusted
2020-10-01    1884.1    1909.6   1882.5     1908.4         730        1908.4
2020-10-02    1893.9    1913.0   1893.9     1900.2         530        1900.2
2020-10-04        NA        NA       NA         NA          NA            NA
2020-10-05    1898.9    1915.6   1884.7     1912.5        1360        1912.5
2020-10-06    1906.6    1918.0   1874.4     1901.1         968        1901.1
2020-10-07    1874.1    1889.8   1873.1     1883.6          50        1883.6
2020-10-08    1893.0    1893.0   1882.7     1888.6         348        1888.6
2020-10-09    1909.3    1929.1   1905.1     1919.5         348        1919.5

只需用na.exclude删除空白的日子

na.exclude(gold)
           GC=F.Open GC=F.High GC=F.Low GC=F.Close GC=F.Volume GC=F.Adjusted
2020-10-01    1884.1    1909.6   1882.5     1908.4         730        1908.4
2020-10-02    1893.9    1913.0   1893.9     1900.2         530        1900.2
2020-10-05    1898.9    1915.6   1884.7     1912.5        1360        1912.5
2020-10-06    1906.6    1918.0   1874.4     1901.1         968        1901.1
2020-10-07    1874.1    1889.8   1873.1     1883.6          50        1883.6
2020-10-08    1893.0    1893.0   1882.7     1888.6         348        1888.6
2020-10-09    1909.3    1929.1   1905.1     1919.5         348        1919.5

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...