Bert,
   Boy, to me that's one of those 'you have to know what it means to
know what it means' sort of things. Thanks for pointing it out though.
I appreciate it.

Cheers,
Mark

On Fri, Sep 18, 2009 at 1:09 PM, Bert Gunter <gunter.ber...@gene.com> wrote:
>  It **IS** stated explicitly, though perhaps not so obviously,  already in
> the help file,  In the "Note" section at the end it says:
>
> "... This means that the recorded call is always of the form FUN(X[[0L]],
> ...), with 0L replaced by the current integer index. ..."
>
> So you need to read more carefully ...
>
> Bert Gunter
> Genentech Nonclinical Statistics
>
> -----Original Message-----
> From: r-help-boun...@r-project.org [mailto:r-help-boun...@r-project.org] On
> Behalf Of Mark Knecht
> Sent: Friday, September 18, 2009 11:55 AM
> To: jim holtman
> Cc: r-help; Phil Spector
> Subject: Re: [R] lapply - value changes as parameters to function?
>
> Thanks Jim. That did the trick.
>
> I had wondered in passing about that as all the examples in the
> ?lapply page were pretty simple and each time it was the first
> argument. However I didn't read that this was a requirement so I
> didn't go there. Is this really stated and I just cannot see it or
> possibly should some extra verbiage be added. (Heck - it's Open Source
> - guess I could do it myself and submit it to who ever manages that
> stuff!)
>
> Again, thanks!
>
> Cheers,
> Mark
>
> On Fri, Sep 18, 2009 at 11:06 AM, jim holtman <jholt...@gmail.com> wrote:
>> Change the order of the parameters in your function so that Lookback
>> is the first one.  The first parameter of the lapply is what is passed
>> to the function as its first parameter.  Now just have
>>
>> ResultList <- lapply(x, DoAvgCalcs, IndexData=IndexData,
>> SampleSize=TestSamples, Iteration=TestIterations)
>>
>>
>> On Fri, Sep 18, 2009 at 1:32 PM, Mark Knecht <markkne...@gmail.com> wrote:
>>> Phil,
>>>   Thanks for the reply. Your suggestion is actually the one I started
>>> with (assuming I'm understanding you) but I didn't seem to even get
>>> down into my function, or the error message is from other place within
>>> my function that I haven't discovered yet:
>>>
>>>> x = seq(5:20)
>>>> ResultList = lapply(x, DoAvgCalcs, IndexData, Lookback=x,
>  SampleSize=TestSamples , Iterations=TestIterations )
>>> Error in rep(NA, k) : invalid 'times' argument
>>>>
>>>
>>>   I should write some fake code that gives you all the depth so we
>>> could jsut run it. If no on eelse sees the answer then I'll be back
>>> later with more code that completely runs.
>>>
>>> Thanks,
>>> Mark
>>>
>>>
>>> On Fri, Sep 18, 2009 at 10:16 AM, Phil Spector
>>> <spec...@stat.berkeley.edu> wrote:
>>>> Mark -
>>>>   The "l" in lapply refers to that fact that it will *return*
>>>> a list, not that it wants a list for input.  You could input a list, but
>>>> then each element of the list would be one of the values you wanted
>>>> processed.  So I think you want
>>>>
>>>> x = seq(5:20)
>>>> ResultList = lapply(x, DoAvgCalcs, IndexData, Lookback=x,
>>>>                       SampleSize=TestSamples , Iterations=TestIterations
> )
>>>>
>>>> This will return a list whose elements are the result of calling
>>>> the DoAvgCalcs function with each value contained in x.  If they
>>>> were all the same length, and you wanted them simplified to a matrix,
>>>> you could use sapply (s for simplify) instead of lapply (l for list).
>>>>
>>>>                                        - Phil Spector
>>>>                                         Statistical Computing Facility
>>>>                                         Department of Statistics
>>>>                                         UC Berkeley
>>>>                                         spec...@stat.berkeley.edu
>>>>
>>>>
>>>> On Fri, 18 Sep 2009, Mark Knecht wrote:
>>>>
>>>>> Hi,
>>>>>  I'm trying to get better at things like lapply but it still stumps
>>>>> me. I have a function I've written, tested and debugged using
>>>>> individual calls to the function, ala:
>>>>>
>>>>> ResultList5  = DoAvgCalcs(IndexData, Lookback=5,
>>>>> SampleSize=TestSamples , Iterations=TestIterations )
>>>>> ResultList8  = DoAvgCalcs(IndexData, Lookback=8,
>>>>> SampleSize=TestSamples , Iterations=TestIterations )
>>>>> ResultList13 = DoAvgCalcs(IndexData, Lookback=13,
>>>>> SampleSize=TestSamples , Iterations=TestIterations )
>>>>> ResultList21 = DoAvgCalcs(IndexData, Lookback=21,
>>>>> SampleSize=TestSamples , Iterations=TestIterations )
>>>>>
>>>>> The function returns a list of numbers which I use for processing
>>>>> later. I'd like to run this on a longer list (100's of values for
>>>>> Lookback) so my thought was to try lapply but so far I cannot get the
>>>>> darn thing right.
>>>>>
>>>>>  Let's say I want to run the function on a string of values:
>>>>>
>>>>> BarTestList = list(seq(5:20))
>>>>>
>>>>> So my thought was something like:
>>>>>
>>>>> x = list(seq(5:20))
>>>>> ResultList = lapply(x, DoAvgCalcs, IndexData, Lookback=x,
>>>>> SampleSize=TestSamples , Iterations=TestIterations )
>>>>>
>>>>> which fails down lower complaining that what it's receiving for
>>>>> Lookback isn't an integer:
>>>>>
>>>>>> x = list(seq(5:20))
>>>>>> ResultList = lapply(x, DoAvgCalcs, IndexData, Lookback=x,
>>>>>>  SampleSize=TestSamples , Iterations=TestIterations )
>>>>>
>>>>> Error in MyLag(df$Close, Lookback) :
>>>>>  (list) object cannot be coerced to type 'integer'
>>>>>>
>>>>>
>>>>>  Can someone suggest how to do this correctly?
>>>>>
>>>>> Thanks,
>>>>> Mark
>>>>>
>>>>> ______________________________________________
>>>>> R-help@r-project.org mailing list
>>>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>>>> PLEASE do read the posting guide
>>>>> http://www.R-project.org/posting-guide.html
>>>>> and provide commented, minimal, self-contained, reproducible code.
>>>>>
>>>>
>>>
>>> ______________________________________________
>>> R-help@r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
>>> and provide commented, minimal, self-contained, reproducible code.
>>>
>>
>>
>>
>> --
>> Jim Holtman
>> Cincinnati, OH
>> +1 513 646 9390
>>
>> What is the problem that you are trying to solve?
>>
>
> ______________________________________________
> R-help@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
>

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to