Thanks Patrick, That did the trick.
Oddly enough (or maybe not that oddly) I was looking through "The R Inferno" to try and find the answer. Since I often forget that there are other parameters available to '[' I never made it to 8.1.44 on dropping dimensions. Hopefully this lesson will stick with me! Thanks again, All the best, Happy New Year, KW -- On Jan 7, 2014, at 1:32 PM, Patrick Burns <[email protected]> wrote: > I think you will be okay if you change > one line to: > > defMat<-sapply(defData[,-1, drop=FALSE], function(x) breakUpFun(freq, x)) > > In your example that doesn't work you are > ending up with a vector rather than a one > column data frame. > > Pat > > > On 07/01/2014 17:44, Keith S Weintraub wrote: >> Folks, >> >> # I have the following function: >> >> breakByFreq<-function(freq, defData) { >> breakUpFun<-function(freq, defs) { >> if(freq != 1) { >> defs<-diff(c(0, defs)) >> defs<-cumsum(rep(defs/freq, each = freq)) >> } >> defs >> } >> defMat<-sapply(defData[,-1], function(x) breakUpFun(freq, x)) >> data.frame(Year = 1:nrow(defMat), defMat) >> } >> >> # And this data (year column and then 2 columns of data): >> >> dum<-structure(list(Year = 1:10, >> c1 = c(0.01, 0.02, 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, >> 0.1), >> c2 = c(0.02, 0.04, 0.06, 0.08, 0.1, 0.12, 0.14, 0.16, 0.18, >> 0.2)), >> .Names = c("Year", "c1", "c2"), row.names = c(NA, -10L), class = >> "data.frame") >> >> # This works: >> breakByFreq(1, dum) >> >> # This doesn't: >> breakByFreq(1, dum[,-3]) >> >> >> # How do I use and choose the appropriate apply function to make this work >> when there is one and or more columns to be "processed". >> >> Thanks for your time, >> KW >> >> >> >> -- >> >> ______________________________________________ >> [email protected] 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. >> > > -- > Patrick Burns > [email protected] > twitter: @burnsstat @portfolioprobe > http://www.portfolioprobe.com/blog > http://www.burns-stat.com > (home of: > 'Impatient R' > 'The R Inferno' > 'Tao Te Programming') ______________________________________________ [email protected] 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.

