On 15.10.2010 09:19, Santosh Srinivas wrote:
I'm still getting familiar with lapply

I have this date sequence
x<- seq(as.Date("01-Jan-2010",format="%d-%b-%Y"), Sys.Date(), by=1) #to
generate series of dates

I want to apply the function for all values of x . so I use lapply (Still a
newbie!)
I wrote this test function
pFun<- function (x) {
   print(paste("This is: ",x,sep=""))
   }


When I run it:
lapply(x,pFun(x))
>
It gives the result correctly.. but end with an error

  Error in match.fun(FUN) :
   'pFun(x)' is not a function, character or symbol

Question 1: What is the issue here??

You have to pass the function, not to call it already:

lapply(x, pFun)



Now, to the real problem. I wrote a function to cmDownFun(sDate)which is
working correctly
If I do cmDownFun (x[6]) .. it works correctly .. (i.e. my function was ok
this time around!)

Hoewever if I do, lapply (x,cmDownFun(x))
It fails at 01-Jan-2010 .... this is because of: HTTP status was '404 Not
Found'

This is OK, because the file does not exist ... but I want to continue for
the remaining values of x
lapply(x,try(cmDownFun(x),silent = TRUE)) .. does not work
I also put the try inside the function itself but does not work either.


Then either use try() in cmDownFun directly or use an anonymous function rather than a call, again:

lapply(x, function(x) try(cmDownFun(x),silent = TRUE))

Uwe Ligges




----------------------------------------------------------------------------
--------------------------
Thanks R-Helpers. Yes, this is a silly question and it will not be repeated!
:-)

______________________________________________
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