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.