Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2009

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Delayed function does not behave as original input

  • To: mathgroup at smc.vnet.net
  • Subject: [mg97010] Re: Delayed function does not behave as original input
  • From: "Sjoerd C. de Vries" <sjoerd.c.devries at gmail.com>
  • Date: Mon, 2 Mar 2009 05:20:42 -0500 (EST)
  • References: <godm4o$47b$1@smc.vnet.net>

It works fine for me. I think that your close list may have become
undefined during your activities. I get similar responses when I
undefine it.

By the way: your use of Riffle is overly complex. Instead of

Riffle[close, dates, {1, -1, 2}]

(which works, but uses an undocumented feature of Riffle) you could
have used

Riffle[dates, close].

Note the change in order of the two lists.

Cheers -- Sjoerd

On Mar 1, 11:56 am, hayes.ty... at gmail.com wrote:
> Hello All:
>
> I am trying to make a simple function to Riffle two lists together for
> a DateListPlot. I have attached an example below to show you what I am
> trying to do. Clearly, I am missing something basic here, but cannot
> seem to see what.
>
> EXAMPLE CODE
>
> close = {52.25`, 52.`, 52.01`, 52.06`, 52.14`, 52.45`, 52.06`, 51.89`,
>     52.06`, 52.05`};
>
> dates = {{2009, 2, 26, 9, 30, 0}, {2009, 2, 26, 9, 31, 0}, {2009, 2,
>     26, 9, 32, 0}, {2009, 2, 26, 9, 33, 0}, {2009, 2, 26, 9, 34,
>     0}, {2009, 2, 26, 9, 35, 0}, {2009, 2, 26, 9, 36, 0}, {2009, 2,
>     26, 9, 37, 0}, {2009, 2, 26, 9, 38, 0}, {2009, 2, 26, 9, 39, 0}};
>
> closedates = Partition[Riffle[close, dates, {1, -1, 2}], 2]
>
> Out[178]= {{{2009, 2, 26, 9, 30, 0}, 52.25}, {{2009, 2, 26, 9, 31, 0},
>    52.}, {{2009, 2, 26, 9, 32, 0}, 52.01}, {{2009, 2, 26, 9, 33, 0},
>   52.06}, {{2009, 2, 26, 9, 34, 0}, 52.14}, {{2009, 2, 26, 9, 35, 0},
>   52.45}, {{2009, 2, 26, 9, 36, 0}, 52.06}, {{2009, 2, 26, 9, 37, 0},
>   51.89}, {{2009, 2, 26, 9, 38, 0}, 52.06}, {{2009, 2, 26, 9, 39, 0},
>   52.05}}
>
> (* The above is what I want *)
>
> dateDataMerge[datedata_, ordinatedata_] :=
>   Partition[Riffle[ordinatedata, datedata, {1, -1, 2}], 2];
>
> closedatesbad = dateDataMerge[dates, close]
>
> During evaluation of In[180]:= Riffle::list: List expected at position
> 1 in Riffle[52.25,2009,{1,-1,2}]. >>
>
> During evaluation of In[180]:= Riffle::list: List expected at position
> 1 in Riffle[52.25,2009]. >>
>
> During evaluation of In[180]:= Riffle::argtu: Riffle called with 1
> argument; 2 or 3 arguments are expected. >>
>
> During evaluation of In[180]:= Riffle::list: List expected at position
> 1 in Riffle[52.25,2,{1,-1,2}]. >>
>
> During evaluation of In[180]:= General::stop: Further output of
> Riffle::list will be suppressed during this calculation. >>
>
> END OF EXAMPLE CODE
>
> Any help is appreciated.
>
> Cheers,
>
> t.



  • Prev by Date: Re: Delayed function does not behave as original input
  • Next by Date: Re: different output!!
  • Previous by thread: Re: Delayed function does not behave as original input
  • Next by thread: Re: Delayed function does not behave as original input