<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">
<HTML>
<HEAD>
  <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=UTF-8">
  <META NAME="GENERATOR" CONTENT="GtkHTML/3.16.1">
</HEAD>
<BODY>
<FONT COLOR="#000000">Surprisingly, that doesn't work. What is particularly strange is that the indexing yields (to me) unexpected results. Do you know if this is expected behavior? Please bear with the code below; the pay off is at the end (if you consider strange behavior a payoff).</FONT><BR>
<BR>
<FONT COLOR="#000000">&gt; class(index(series))</FONT><BR>
<FONT COLOR="#000000">[1] &quot;yearmon&quot;</FONT><BR>
<FONT COLOR="#000000">&gt; head(series) # Initial state</FONT><BR>
<FONT COLOR="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [,1]</FONT><BR>
<FONT COLOR="#000000">Jan 1857 FALSE</FONT><BR>
<FONT COLOR="#000000">Feb 1857 FALSE</FONT><BR>
<FONT COLOR="#000000">Mar 1857 FALSE</FONT><BR>
<FONT COLOR="#000000">Apr 1857 FALSE</FONT><BR>
<FONT COLOR="#000000">May 1857 FALSE</FONT><BR>
<FONT COLOR="#000000">Jun 1857 FALSE</FONT><BR>
<FONT COLOR="#000000">&gt; tail(series)</FONT><BR>
<FONT COLOR="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [,1]</FONT><BR>
<FONT COLOR="#000000">Jul 2001 FALSE</FONT><BR>
<FONT COLOR="#000000">Aug 2001 FALSE</FONT><BR>
<FONT COLOR="#000000">Sep 2001 FALSE</FONT><BR>
<FONT COLOR="#000000">Oct 2001 FALSE</FONT><BR>
<FONT COLOR="#000000">Nov 2001 FALSE</FONT><BR>
<FONT COLOR="#000000">Dec 2001 FALSE</FONT><BR>
<BR>
<FONT COLOR="#000000">&gt; y1 &lt;- as.yearmon(&quot;1858-05&quot;) </FONT><BR>
<FONT COLOR="#000000">&gt; y2 &lt;- as.yearmon(&quot;1858-07&quot;) </FONT><BR>
<FONT COLOR="#000000">&gt; window(series, start = y1, end = y2) &lt;- TRUE</FONT><BR>
<FONT COLOR="#000000">&gt; </FONT><BR>
<FONT COLOR="#000000">&gt; head(series)</FONT><BR>
<FONT COLOR="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [,1]</FONT><BR>
<FONT COLOR="#000000">Jan 1857 FALSE</FONT><BR>
<FONT COLOR="#000000">Feb 1857 FALSE</FONT><BR>
<FONT COLOR="#000000">Mar 1857 FALSE</FONT><BR>
<FONT COLOR="#000000">Apr 1857 FALSE</FONT><BR>
<FONT COLOR="#000000">May 1857 FALSE # Expected T</FONT><BR>
<FONT COLOR="#000000">Jun 1857 FALSE # Expected T</FONT><BR>
<BR>
<FONT COLOR="#000000">&gt; # This is the strange part</FONT><BR>
<FONT COLOR="#000000">&gt; head(window(series, start=y1))</FONT><BR>
<FONT COLOR="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [,1]</FONT><BR>
<FONT COLOR="#000000">Feb 1970 FALSE # But y1 == as.yearmon(&quot;1858-05&quot;)</FONT><BR>
<FONT COLOR="#000000">Mar 1970 FALSE</FONT><BR>
<FONT COLOR="#000000">Apr 1970 FALSE</FONT><BR>
<FONT COLOR="#000000">May 1970 FALSE</FONT><BR>
<FONT COLOR="#000000">Jun 1970 FALSE</FONT><BR>
<FONT COLOR="#000000">Jul 1970 FALSE</FONT><BR>
<BR>
<FONT COLOR="#000000">&gt; head(window(series, start=y1, end=c(2001,12))) # No data returned?</FONT><BR>
<FONT COLOR="#000000">Data:</FONT><BR>
<FONT COLOR="#000000">numeric(0)</FONT><BR>
<BR>
<FONT COLOR="#000000">Index:</FONT><BR>
<FONT COLOR="#000000">integer(0)</FONT><BR>
<FONT COLOR="#000000">&gt; head(window(series, start=y1, end=as.yearmon('2001-12'))) # Same thing using yearmon?</FONT><BR>
<FONT COLOR="#000000">Data:</FONT><BR>
<FONT COLOR="#000000">numeric(0)</FONT><BR>
<BR>
<FONT COLOR="#000000">Index:</FONT><BR>
<FONT COLOR="#000000">integer(0)</FONT><BR>
<BR>
<FONT COLOR="#000000">&gt; # Let's try y2 just for fun</FONT><BR>
<FONT COLOR="#000000">&gt; y2</FONT><BR>
<FONT COLOR="#000000">[1] &quot;Jul 1858&quot;</FONT><BR>
<FONT COLOR="#000000">&gt; head(window(series, start=y2))</FONT><BR>
<FONT COLOR="#000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; [,1]</FONT><BR>
<FONT COLOR="#000000">Feb 1970 FALSE # ???</FONT><BR>
<FONT COLOR="#000000">Mar 1970 FALSE</FONT><BR>
<FONT COLOR="#000000">Apr 1970 FALSE</FONT><BR>
<FONT COLOR="#000000">May 1970 FALSE</FONT><BR>
<FONT COLOR="#000000">Jun 1970 FALSE</FONT><BR>
<FONT COLOR="#000000">Jul 1970 FALSE</FONT><BR>
<BR>
<BR>
<FONT COLOR="#000000">It seems that the values of the yearmons are being interpreted incorrectly. Any ideas on why this is happening and what is to be done about it?</FONT><BR>
<BR>
<FONT COLOR="#000000">Thanks,</FONT><BR>
<FONT COLOR="#000000">Brian</FONT><BR>
<BR>
----- Original message ----- <BR>
Sent: 2008/11/30 21:07:06 <BR>
Subject: Re:Re: [R-SIG-Finance] xts assignment via yearmon or string-based indexing <BR>
<BR>
Don't know what is wrong but as a workaround note that since xts is a <BR>
subclass of zoo you can also use zoo methods on xts objects. <BR>
See ?window.zoo <BR>
<BR>
y1 &lt;- as.yearmon(&quot;1858-05&quot;) <BR>
y2 &lt;- as.yearmon(&quot;1858-07&quot;) <BR>
window(series, start = y1, end = y2) &lt;- TRUE <BR>
<BR>
<BR>
<BR>
On Sun, Nov 30, 2008 at 6:06 PM, Brian Lee Yung Rowe wrote: <BR>
&gt; Hi, <BR>
&gt; <BR>
&gt; I have an xts series and want to update some of the values in the series. <BR>
&gt; This works fine when I use an integer index (or list of integer indices), <BR>
&gt; but it doesn't work if I use other methods like the string-based indexing or <BR>
&gt; a list of yearmons. Is this the expected behavior or am I doing something <BR>
&gt; wrong? <BR>
&gt; <BR>
&gt; Brian <BR>
&gt; <BR>
&gt; <BR>
&gt;&gt; dates &lt;- timeBasedSeq('185801/2002') <BR>
&gt;&gt; series &lt;- xts(rep(F, length(dates)), dates) <BR>
&gt; <BR>
&gt;&gt; series['1858-05::1858-07'] &lt;- T <BR>
&gt;&gt; head(series) <BR>
&gt; [,1] <BR>
&gt; Jan 1858 FALSE <BR>
&gt; Feb 1858 FALSE <BR>
&gt; Mar 1858 FALSE <BR>
&gt; Apr 1858 FALSE <BR>
&gt; May 1858 FALSE # Expected to be T <BR>
&gt; Jun 1858 FALSE # Expected to be T <BR>
&gt; <BR>
&gt;&gt; series[dates.1] &lt;- T <BR>
&gt;&gt; series[dates.1] <BR>
&gt; [,1] <BR>
&gt; May 1858 FALSE # Expected to be T <BR>
&gt; Jun 1858 FALSE # Expected to be T <BR>
&gt; Jul 1858 FALSE # Expected to be T <BR>
&gt; <BR>
&gt;&gt; series[1] &lt;- T <BR>
&gt;&gt; head(series) <BR>
&gt; [,1] <BR>
&gt; Jan 1858 TRUE # T as expected <BR>
&gt; Feb 1858 FALSE <BR>
&gt; Mar 1858 FALSE <BR>
&gt; Apr 1858 FALSE <BR>
&gt; May 1858 FALSE <BR>
&gt; Jun 1858 FALSE <BR>
&gt; <BR>
&gt;&gt; series[c(2,3)] &lt;- T <BR>
&gt;&gt; head(series) <BR>
&gt; [,1] <BR>
&gt; Jan 1858 TRUE <BR>
&gt; Feb 1858 TRUE # This worked as expected <BR>
&gt; Mar 1858 TRUE # This worked as expected <BR>
&gt; Apr 1858 FALSE <BR>
&gt; May 1858 FALSE <BR>
&gt; Jun 1858 FALSE <BR>
&gt; <BR>
&gt; <BR>
&gt; <BR>
&gt; _______________________________________________ <BR>
&gt; R-SIG-Finance@stat.math.ethz.ch mailing list <BR>
&gt; https://stat.ethz.ch/mailman/listinfo/r-sig-finance <BR>
&gt; -- Subscriber-posting only. <BR>
&gt; -- If you want to post, subscribe first. <BR>
&gt; 
</BODY>
</HTML>