[R-SIG-Finance] [xts] merge function weird behaviour

Anass Mouhsine anass.mouhsine at gmail.com
Fri Dec 10 10:19:59 CET 2010


Here,

you will find attached data used to illustrate the issue.
here is the code used as well

#reading file
t1=read.csv("AUDJPY.csv", sep=";")
rownames(t1)<-t1[,"Index"];t1<-t1[,-1]
#constructing xts object
t1<-as.xts(t1,tzone="America/New_York", src="csv", updated=Sys.time())

t2=read.csv("CHFJPY.csv", sep=";")
rownames(t2)<-t2[,"Index"];t2<-t2[,-1]
t2<-as.xts(t2,tzone="America/New_York", src="csv", updated=Sys.time())

# requires quantmod
library(quantmod)

#constructing daily close series
t1<-Cl(to.daily(t1))
t2<-Cl(to.daily(t2))

#trying to merge
merge(t1,t2)

#......and result....sadly...is
 > merge(t1,t2)
            t1.Close t2.Close
2007-01-02          NA       97.87
2007-01-02       94.59          NA
2007-01-03       94.38       97.32
2007-01-04       92.55       96.04
2007-01-05          NA       95.97
2007-01-05       92.37          NA
2007-01-07          NA       95.69
2007-01-07       92.23          NA
2007-01-08       92.89       96.23



On 10/12/2010 10:04, Mark Breman wrote:
> Hi Anass,
>
> Could it be the series have a (invisible) different time part, or the 
> timezone is different.
>
> Regards,
>
> -Mark-
>
> 2010/12/10 Anass Mouhsine <anass.mouhsine at gmail.com 
> <mailto:anass.mouhsine at gmail.com>>
>
>     Hi all,
>
>     I encountered a weird behaviour of merge function while using it
>     with xts objects.
>     I have multiple xts objects (10 timeseries) that I want to merge
>     in order to conduct a multivariate analysis.
>     Here is an example with only two timeseries
>
>     #Let us define the time series
>     > t1
>                                           Close
>     2007-01-02                  97.87
>     2007-01-03                  97.32
>     2007-01-04                  96.04
>     2007-01-05                  95.97
>     2007-01-07                  95.69
>     2007-01-08                  96.23
>     > t2
>                                           Close
>     2007-01-02                  94.59
>     2007-01-03                  94.38
>     2007-01-04                  92.55
>     2007-01-05                  92.37
>     2007-01-07                  92.23
>     2007-01-08                  92.89
>     > c(class(t1),class(t2))
>     [1] "xts" "zoo" "xts" "zoo"
>
>     #I do the merge using merge.xts
>     > t<-merge(t1,t2)
>     > t
>                                           Close                 Close
>     2007-01-02                  97.87                     NA
>     2007-01-02                     NA                  94.59
>     2007-01-03                  97.32                  94.38
>     2007-01-04                  96.04                  92.55
>     2007-01-05                  95.97                     NA
>     2007-01-05                     NA                  92.37
>     2007-01-07                  95.69                     NA
>     2007-01-07                     NA                  92.23
>     2007-01-08                  96.23                  92.89
>
>     # I don't see where the problem lays since both xts objects have
>     the same index
>     > index(t1)
>     [1] "2007-01-02" "2007-01-03" "2007-01-04" "2007-01-05"
>     "2007-01-07" "2007-01-08"
>     > index(t2)
>     [1] "2007-01-02" "2007-01-03" "2007-01-04" "2007-01-05"
>     "2007-01-07" "2007-01-08"
>
>     # I tried using join but with no satisfying result
>     >t<-merge(head(t1),head(t2),join='inner')
>     > t
>               CHFJPY..2007.....Close AUDJPY..2007.....Close
>     2007-01-03                  97.32                  94.38
>     2007-01-04                  96.04                  92.55
>     2007-01-08                  96.23                  92.89
>
>     I am really out of tricks here :-[ .
>
>     So if someone is kind enough as to point me towards the right
>     direction, it would make my day.
>
>     Thx in advance,
>
>     Anass
>
>     _______________________________________________
>     R-SIG-Finance at r-project.org <mailto:R-SIG-Finance at r-project.org>
>     mailing list
>     https://stat.ethz.ch/mailman/listinfo/r-sig-finance
>     -- Subscriber-posting only. If you want to post, subscribe first.
>     -- Also note that this is not the r-help list where general R
>     questions should go.
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://stat.ethz.ch/pipermail/r-sig-finance/attachments/20101210/9fd045e6/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: AUDJPY.csv
Type: application/vnd.ms-excel
Size: 149313 bytes
Desc: not available
URL: <https://stat.ethz.ch/pipermail/r-sig-finance/attachments/20101210/9fd045e6/attachment.xlb>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: CHFJPY.csv
Type: application/vnd.ms-excel
Size: 145700 bytes
Desc: not available
URL: <https://stat.ethz.ch/pipermail/r-sig-finance/attachments/20101210/9fd045e6/attachment-0001.xlb>


More information about the R-SIG-Finance mailing list