See ?apply If X is not an array but has a dimension attribute, apply attempts to coerce it to an array via as.matrix if it is two-dimensional (e.g., data frames) or via as.array.
So for example, try this noting that time is 1, 2, 3, ... apply(monthly, 2, time) Try lm(monthly ~ time(monthly)) On Wed, Apr 30, 2008 at 9:00 AM, <[EMAIL PROTECTED]> wrote: > Full_Name: Stephen McIntyre > Version: 2.7 > OS: Windows XP > Submission from: (NULL) (99.231.2.44) > > > When I use the apply function to calculate a trend for a matrix of monthly > time > series, it yields a different answer than when the trend is calculated one at > a > time (by a factor of 12) rather than the identical answer as it should. Here's > an example: > > download.file("http://www.climateaudit.org/data/models/monthly.tab","temp.dat",mode="wb") > load("temp.dat") > trend= function(x) lm(x~c(time(x)))$coef[2] > b= apply(monthly,2,trend) > a= c(trend(monthly[,1]),trend(monthly[,2]),trend(monthly[,3])) > a/b #12 12 12 > > ______________________________________________ > R-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel > ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel