0

我正在尝试使用 zoo 包,但不幸的是,当我尝试使用它时它显示错误。

事实上,我得到的结果在最后一行是错误的。

> library(zoo)

Attaching package: ‘zoo’

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

    as.Date, as.Date.numeric

> library(zoo)
> sbux=read.csv(file="sbuxPrices.csv",header=TRUE)
> dates.sbx = as.yearmon(sbux.df$Date, format="%m/%d/%Y")
> sbux.z=zoo(x=sbux$Adj.Close, order.by=dates.sbx)
> class(sbux.z)
[1] "zoo"
> head(sbux.z)
Jan 0000 Feb 0000 Mar 0000 Apr 0000 May 0000 Jun 0000 
    7.66     8.41    10.73     7.24     8.14     9.14 

编辑:(1)我的数据是http://faculty.washington.edu/ezivot/econ424/sbuxPrices.csv并相信它没有问题,因为我的讲义可以使用它并获得正确的结果。(2) 删除了 rstudio 标签。我认为我在其中编码的事实有所不同!

谢谢!

4

1 回答 1

1

简要地:

  1. 您没有显示数据,我怀疑您的格式字符串完全错误。

  2. 请重新阅读 zoo 包中详细的完整小插曲。

编辑:现在您通过提供数据使其可重现:

R> sbux <- read.csv("http://faculty.washington.edu/ezivot/econ424/sbuxPrices.csv",
+                   stringsAsFactors=FALSE)
R> summary(sbux)
     Date             Adj.Close    
 Length:181         Min.   : 1.19  
 Class :character   1st Qu.: 3.94  
 Mode  :character   Median : 9.23  
                    Mean   :12.38  
                    3rd Qu.:18.93  
                    Max.   :37.76  
R> 
R> 
R> sbuxZoo <- zoo(sbux[,"Adj.Close"], 
+                 order.by=as.Date(sbux[,"Date"], "%d/%m/%Y"))
R> 
R> head(sbuxZoo)
1993-01-04 1993-01-06 1993-01-07 1993-01-09 1993-01-10 1993-01-11 
      1.21       1.53       1.48       1.71       1.67       1.39 
R> 
于 2012-12-21T21:10:10.003 回答