From: Robert Baer <rbaer_at_atsu.edu>

Date: Thu, 24 Jul 2008 12:24:59 -0500

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 Thu 24 Jul 2008 - 17:32:15 GMT

Date: Thu, 24 Jul 2008 12:24:59 -0500

*>
*

> I'm trying to calculate the percent change for a time-series variable.

*> Basically the first several observations often look like this,
**>
**> x <- c(100, 0, 0, 150, 130, 0, 0, 200, 0)
**>
**> and then later in the life of the variable they're are generally no more
**> 0's. So when I try to calculate the percent change from one observation
**> to
**> the next, I end up with a lot of NA/Nan/INF, and sometimes 0's which is
**> what
**> I want, in the beginning.
**>
**> I know I can use x <- na.omit(x), and other forms of this, to get rid of
**> some of these errors. But I would rather use some kind of function that
**> would by defult give a 0 while dividing by zero so that I don't lose the
**> observation, which is what happens when I use na.omit.
**>
*

Well, this is not an error but proper behavior in the world of math that I know.

However, to get what you want you could try
x=(100-0)/0

if(!is.finite(x))x=0

x

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 Thu 24 Jul 2008 - 17:32:15 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 Thu 24 Jul 2008 - 20:34:11 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.
*