[R] ts - unit conversion

Heywood, Giles Giles.Heywood at CommerzbankIB.com
Tue Sep 30 18:36:12 CEST 2003


Financial data, as you point out, is generally irregular, which is
in essence what prompted the devlopment of the irregular time-series
(its) package, which is posted on CRAN (v0.1.2 posted today, incidentally).
In the its class, the time-stamps of the rows of a matrix are represented 
using the POSIXct class, so irregularity can be represented accurately.

Inspection of get.hist.quote() shows that it would be quite straightforward
to adapt it to return an 'its'.  I would do so myself, but have no
spare time in the short term to do this (and I'm behind a proxy/firewall
which seems to complicate matters).

Giles

> -----Original Message-----
> From: michaell taylor [mailto:mt at michaelltaylor.com]
> Sent: 30 September 2003 16:51
> To: R-help at stat.math.ethz.ch
> Subject: [R] ts - unit conversion
> 
> 
> 
> I've been using R for a while, but now find myself needing to 
> understand
> time-series objects for a short course I am teaching.  I am putting
> together some daily financial datasets for illustration, but 
> having some
> trouble in aggregating the data to months or weeks. I am getting a
> "cannot change frequency from 1 to 12" message.  
> 
> I am not sure that aggregation is where I want to go anyway.  Assuming
> for the moment that I had one full year of data, I would like the
> observations to relate to real months with various numbers of 
> days, not
> simply 1/12th of a year.  It is unclear to me how sophisticated the
> aggregator is in this regard.
> 
> I have V&R but it seems there may be some SPlus/R differences 
> here. Any
> suggestions for documents that addresses these issues would be
> wonderful.  Thanks.
> 
> > ibm <- get.hist.quote('ibm',start='2003-01-01')
> trying URL
> `http://chart.yahoo.com/table.csv?s=ibm&a=11&b=31&c=2002&d=8&e
> =28&f=2003&g=d&q=q&y=0&z=ibm&x=.csv'
> Content type `application/octet-stream' length unknown
> opened URL
> ........
> downloaded 8990 bytes
> 
> time series starts 2002-12-30
> time series ends   2003-09-25
> 
> Just to check what I have....
> 
> > attributes(ibm)
> $dim
> [1] 270   4
> 
> $dimnames
> $dimnames[[1]]
> NULL
> 
> $dimnames[[2]]
> [1] "Open"  "High"  "Low"   "Close"
> 
> 
> $tsp
> [1] 37621 37890     1
> 
> $class
> [1] "mts" "ts"
> 
> Attempting to pull monthly means .....
> 
> > aggregate(ibm,12,mean)
> Error in aggregate.ts(ibm, 12, mean) : cannot change 
> frequency from 1 to
> 12
> 
> I thought perhaps I had a non-integer number of months in the 
> data which
> may be causing problems.
> 
> > length(ibm)
> [1] 1080
> > 1080/12
> [1] 90
> >
> 
> Alternatively...making the data coordinate to real months...
> > ibm <- get.hist.quote('ibm',start='2003-01-01',end='2003-08-31')
> trying URL
> `http://chart.yahoo.com/table.csv?s=ibm&a=11&b=31&c=2002&d=7&e
> =30&f=2003&g=d&q=q&y=0&z=ibm&x=.csv'
> Content type `application/octet-stream' length unknown
> opened URL
> .......
> downloaded 8082 bytes
> 
> time series starts 2002-12-30
> time series ends   2003-08-28
> > aggregate(ibm,12,mean)
> Error in aggregate.ts(ibm, 12, mean) : cannot change 
> frequency from 1 to
> 12
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://www.stat.math.ethz.ch/mailman/listinfo/r-help
> 


********************************************************************** 
This is a commercial communication from Commerzbank AG.\ \ T...{{dropped}}




More information about the R-help mailing list