2

以下に示すように、a は空の「xts」オブジェクトです。どういうわけか、日付でインデックスを作成すると、dimnameが文字列として返されます...

> a
Split
> dimnames(a)
[[1]]
NULL
[[2]]
[1] "Split"
> str(a)
An 'xts' object of zero-width
> str(a['2003'])
chr "Split"

誰かがすでにこれに遭遇しましたか?誰かが回避策を知っていますか? どんな助けでも大歓迎です。

実際のシナリオはこちら

library(TTR)
d = getYahooData('ACE', 20121201, 20121231, freq="daily", type="split", adjust=F, quiet=T)
s = d[!is.na(d[, 2]), 2]
> s
Split
> s['2012']
[1] "Split"
> str(s)
An 'xts' object of zero-width
> str(s['2012'])
chr "Split"

> sessionInfo()
R version 2.14.1 (2011-12-22)
Platform: x86_64-pc-linux-gnu (64-bit)

locale:
  [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C               LC_TIME=en_US.UTF-8       
[4] LC_COLLATE=en_US.UTF-8     LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
[7] LC_PAPER=C                 LC_NAME=C                  LC_ADDRESS=C              
[10] LC_TELEPHONE=C             LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
  [1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
  [1] XML_3.95-0.1    tseries_0.10-30 TTR_0.21-1      xts_0.9-1       zoo_1.7-9      

loaded via a namespace (and not attached):
  [1] grid_2.14.1      lattice_0.20-0   quadprog_1.5-4   rstudio_0.97.248 tools_2.14.1    
4

1 に答える 1

2

インデックスをsusbsetしようとすると、xtsオブジェクトのバグのように見えます。

1つの回避策は、を使用することですdrop = TRUE

d = getYahooData('ACE', 20121201, 20121231, freq="daily", type="split", adjust=F, quiet=T)
s = d[!is.na(d[, 2]), 2,drop=TRUE]

 str(s)
An 'xts' object of zero-width

str(s['2012'])
An ‘xts’ object on NA/NA containing:
  Data: logi [1, 1] NA
  Indexed by objects of class: [POSIXct,POSIXt] TZ: 
  xts Attributes:  
List of 2
 $ tclass: chr [1:2] "POSIXct" "POSIXt"
 $ tzone : chr ""
于 2013-01-15T16:48:45.833 に答える