2012-08-24 10 views
5

にしてください、私の例を再現するために、Rには、このデータ構造を置く:の時刻が< - 'の該当メソッドクラスのオブジェクトに適用される「C( 『のXTS』、 『動物園』)」

dX <- structure(c(3272.1, 3271.48, 3281.03, 3267.08, 3260.65, NA, 1616.3, 
1620.1, 1639.9, 1637.4, 1669.6, 1662.2, 528.385, 529.268, 531.022, 
532.424, NA, NA), .indexTZ = "", class = c("xts", "zoo"), .indexCLASS = c("POSIXct", 
"POSIXt"), tclass = c("POSIXct", "POSIXt"), tzone = "", index = structure(c(1345147200, 
1345406400, 1345492800, 1345579200, 1345665600, 1345752000), tzone = "", tclass = c("POSIXct", 
"POSIXt")), .Dim = c(6L, 3L), .Dimnames = list(NULL, c("M1WO.Index", 
"GC1.COMB.Comdty", "JGAGGUSD.Index"))) 

今、このコードを試してみてください。

library(PerformanceAnalytics) 
library(quantmod) 
library(timeSeries) 
charts.PerformanceSummary(R = dX) 

をして、このエラーを取得:

Error in UseMethod("time<-") : 
    no applicable method for 'time<-' applied to an object of class "c('xts', 'zoo')" 

私は問題はそのclass = c("xts, "zoo")件のデータについてだと思いますが、私はその形式でそれらのデータを読み込む理由を理解していないし、単純なxtsオブジェクトにどのように強制するかもしれない。

どうすればこの問題を解決できますか?

私のシステム:私はパッケージをロードすると、私は次の取得

R version 2.15.1 (2012-06-22) 
Platform: i386-pc-mingw32/i386 (32-bit) 

locale: 
[1] LC_COLLATE=English_United States.1252 
[2] LC_CTYPE=English_United States.1252 
[3] LC_MONETARY=English_United States.1252 
[4] LC_NUMERIC=C       
[5] LC_TIME=English_United States.1252  

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

other attached packages: 
[1] timeSeries_2160.94   timeDate_2160.95    
[3] quantmod_0.3-17    TTR_0.21-1     
[5] Defaults_1.1-1    PerformanceAnalytics_1.0.4.4 
[7] xts_0.8-6     zoo_1.7-7     
[9] rcom_2.2-5     rscproxy_2.0-5    

loaded via a namespace (and not attached): 
[1] fBasics_2160.81 fGarch_2110.80.1 grid_2.15.1  lattice_0.20-6 
[5] MASS_7.3-18  stabledist_0.6-4 tools_2.15.1 

Loading required package: zoo 

Attaching package: ‘zoo’ 

The following object(s) are masked from ‘package:base’: 

    as.Date, as.Date.numeric 

Loading required package: timeDate 

Attaching package: ‘timeDate’ 

The following object(s) are masked from ‘package:PerformanceAnalytics’: 

    kurtosis, skewness 

Attaching package: ‘timeSeries’ 

The following object(s) are masked from ‘package:zoo’: 

    time<- 

エラーmessaggeによると、私はtimeSeriestime<-を取り付けるがからマスクされているとき、問題が来ると思いますpackage:zoo、私はそれが何を意味するのか、どう対処するのか本当に分かりません。

+0

あなたは、パッケージ 'xts'をロードしたことがありますか? – Pop

+0

私はもちろん: 'quantmod'をロードして' xts'もロードするために、私のサンプルコードに別のコマンドラインを追加しました。 – user1621969

+0

'class(as.xts(dX))'は依然として '' xts "" zoo "'オブジェクトを返しますが、 'zoo'コンポーネントは省略したいと考えています。 – user1621969

答えて

10

問題はパッケージtimeSeriesです。あなたはcharts.PerformanceSummaryを使用すると、再びそれをロードするよりも、パッケージを切り離すことができ

Attaching package: ‘timeSeries’ 

The following object(s) are masked from ‘package:zoo’: 

    time<- 

:それは次の警告を与えるロード

detach('package:timeSeries') 
detach('package:timeDate') # since it masks statistical functions 
charts.PerformanceSummary(R = dX) 
library(timeSeries) 
+0

ありがとう、ローランド。私が** time'をロードしなければならないと仮定してください:この問題をどうやって処理するのですか? – user1621969

+0

デタッチしてからもう一度ロードしてください。 – Roland

+0

ほかに何か? :) ありがとうございます – user1621969