From: William Dunlap <wdunlap_at_tibco.com>

Date: Mon, 28 Feb 2011 10:58:05 -0800

}

For a more general solution, try setting options("error") to one of the debugging error handlers. options(error=recover) works but there are others. It takes a little while to figure out how to use the error handler but once you do you can solve your own problems.

R-help_at_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. Received on Mon 28 Feb 2011 - 19:00:48 GMT

Date: Mon, 28 Feb 2011 10:58:05 -0800

You can debug this sort of thing yourself by altering your function to tell you what its inputs are when things go wrong. E.g., change your original foo <- function(x) {

unlist(lapply(x, FUN = function(z) cumsum(z) - z))
}

to

foo <- function(x) {

retval <- unlist(lapply(x, FUN=function(z), cumsum(z) - z)) if (length(retval)==0)) { cat("foo: length(retval)==0 when x=\n") str(x) stop("problem in foo") } retval

}

For a more general solution, try setting options("error") to one of the debugging error handlers. options(error=recover) works but there are others. It takes a little while to figure out how to use the error handler but once you do you can solve your own problems.

Bill Dunlap

Spotfire, TIBCO Software

wdunlap tibco.com

> -----Original Message-----

*> From: r-help-bounces_at_r-project.org
**> [mailto:r-help-bounces_at_r-project.org] On Behalf Of
**> rex.dwyer_at_syngenta.com
**> Sent: Monday, February 28, 2011 9:31 AM
**> To: murdoch.duncan_at_gmail.com; mathijsdevaan_at_gmail.com
**> Cc: r-help_at_r-project.org
**> Subject: Re: [R] Error
**>
**> I have to agree that it's pretty hard to take something that
**> works and figure out why it doesn't work :)
**> The only other suggestion is that sometimes I find that this
**> sort of error goes away if I add "drop=FALSE" to the
**> subsetting, and, if so, that usually lets me figure out why.
**>
**> -----Original Message-----
**> From: r-help-bounces_at_r-project.org
**> [mailto:r-help-bounces_at_r-project.org] On Behalf Of Duncan Murdoch
**> Sent: Sunday, February 27, 2011 5:52 AM
**> To: mathijsdevaan
**> Cc: r-help_at_r-project.org
**> Subject: Re: [R] Error
**>
**> On 11-02-26 8:26 AM, mathijsdevaan wrote:
**> > Mean doesn't work either... I understand that the message
**> "replacement has 0
**> > items, need 37597770" implies that the function is not
**> returning any values,
**> > but I don't understand why then this is not the case in the example.
**> >
**> > DF = data.frame(read.table(textConnection(" A B C D E
**> > 1 1 a 1999 1 0
**> > 2 1 b 1999 0 1
**> > 3 1 c 1999 0 1
**> > 4 1 d 1999 1 0
**> > 5 2 c 2001 1 0
**> > 6 2 d 2001 0 1
**> > 7 3 a 2004 0 1
**> > 8 3 b 2004 0 1
**> > 9 3 d 2004 0 1
**> > 10 4 b 2001 1 0
**> > 11 4 c 2001 1 0
**> > 12 4 d 2001 0 1"),head=TRUE,stringsAsFactors=FALSE))
**> >
**> > DF = DF[order(DF$B,DF$C),]
**> >
**> > #first option - works fine in example and my target data frame
**> > DF$F = ave(DF$D,DF$B, FUN = function(x) cumsum(x)-x)
**> > DF$G = ave(DF$E,DF$B, FUN = function(x) cumsum(x)-x)
**> >
**> > #second option - works fine in example but not in my target
**> data frame
**> > foo<- function(x)
**> > {
**> > unlist(lapply(x, FUN = function(z) cumsum(z) - z))
**> > }
**> > n<-ave(DF[,c(4:5)],DF$B,FUN = foo)
**> >
**> > Why is this second option not working in my target data
**> frame (which is much
**> > bigger than the example)?
**>
**> Presumably something is different about it. I don't see how
**> you expect
**> people to debug your problem when you don't show it.
**>
**> If you want help, you need to give us an example that shows the error.
**> Start with your large dataset, and shrink it as much as possible, but
**> not so much that the error goes away. (I suspect when you do this,
**> you'll end up seeing your error yourself. But maybe not.)
**>
**> Duncan Murdoch
**>
**> ______________________________________________
**> R-help_at_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.
**>
**>
**>
**>
**> message may contain confidential information. If you are not
**> the designated recipient, please notify the sender
**> immediately, and delete the original and any copies. Any use
**> of the message by you is prohibited.
**> ______________________________________________
**> R-help_at_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_at_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. Received on Mon 28 Feb 2011 - 19:00:48 GMT

Archive maintained by Robert King, hosted by
the discipline of
statistics at the
University of Newcastle,
Australia.

Archive generated by hypermail 2.2.0, at Mon 28 Feb 2011 - 20:00:17 GMT.

*
Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help.
Please read the posting
guide before posting to the list.
*