3

Linux で r ブロッター デモ プログラムを実行しようとしていますが、demo(amzn_test) を実行すると次のエラーが発生します。

> # update the portfolio stats
> updatePortf("amzn_port",Dates="2010-01-14")
Error in if (nzchar(intervals[1])) s <- as.POSIXlt(do.call(firstof, parse.side(intervals[1]))) : 
  argument is of length zero

興味深いことに、同じバージョンの R を使用すると、すべて Windows で正常に動作します。私はRにかなり慣れていないので、トラブルシューティングをしようとして壁にぶつかりました。Linux と Windows で sessioInfo を確認しましたが、OS 固有であると思われるロケールを除いて一致していました。

Linux の場合:

> sessionInfo()
R version 2.15.1 (2012-06-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        LC_COLLATE=en_US.UTF-8     LC_MONETARY=en_US.UTF-8   
 [6] LC_MESSAGES=en_US.UTF-8    LC_PAPER=C                 LC_NAME=C                  LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

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

other attached packages:
[1] lattice_0.20-6          blotter_0.8.10          FinancialInstrument_1.0 quantmod_0.3-17         TTR_0.21-1              Defaults_1.1-1         
[7] xts_0.8-6               zoo_1.7-7              

loaded via a namespace (and not attached):
[1] grid_2.15.1  tools_2.15.1

Windows の場合:

> sessionInfo()
R version 2.15.1 (2012-06-22)
Platform: x86_64-pc-mingw32/x64 (64-bit)

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

1 に答える 1

4

この問題はRev.1133でパッチが適用されています。コードはtime、リストに含まれているxtsオブジェクトではなく、リストで関数を使用していました。これはしばらくの間問題になっているようですが、昨日明示的に使用するように変更されるまで、エラーなしで意図したものとは異なる値を喜んで返す別のメソッドがディスパッチされていましたxts:::time.xtstime報告ありがとうございます。

最新バージョンのチェックアウト、ビルド、インストールについてサポートが必要な場合は、この投稿を参照してください

于 2012-08-25T23:26:26.307 に答える