The assign the value back to the object: > data<-data.frame(col1=c(1,2,3,4,5)) > > getcol2<-function(data){ + data$col2[data$col1<=2]="L" + data # return value + } > > data <- getcol2(data) # save the return value > data col1 col2 1 1 L 2 2 L 3 3 <NA> 4 4 <NA> 5 5 <NA> >
On Mon, Aug 13, 2012 at 9:23 PM, Sachinthaka Abeywardana <sachin.abeyward...@gmail.com> wrote: > Hi Jim, R, > > What you just showed me simply prints out the 2nd column. If you inspect > your original data, it still just has 1 column. So its still passing by > value. > > Thanks, > Sachin > > On Tue, Aug 14, 2012 at 11:19 AM, jim holtman <jholt...@gmail.com> wrote: >> >> You have to return the value of 'data' from the function. Functions >> do not have "side effects". >> >> > data<-data.frame(col1=c(1,2,3,4,5)) >> > >> > getcol2<-function(data){ >> + data$col2[data$col1<=2]="L" >> + data # return value >> + } >> > >> > getcol2(data) >> col1 col2 >> 1 1 L >> 2 2 L >> 3 3 <NA> >> 4 4 <NA> >> 5 5 <NA> >> > >> >> >> On Mon, Aug 13, 2012 at 9:08 PM, Sachinthaka Abeywardana >> <sachin.abeyward...@gmail.com> wrote: >> > Hi all, >> > >> > I want to do the following: >> > >> > data<-data.frame(col1=c(1,2,3,4,5)) >> > >> > getcol2<-function(data){ >> > data$col2[data$col1<=2]="L" >> > } >> > >> > getcol2(data) >> > >> > Unfortunately in the above col2 does not appear in the final data. So >> > how >> > would you pass this by reference such that you would get it back? >> > >> > Thanks, >> > Sachin >> > >> > [[alternative HTML version deleted]] >> > >> > ______________________________________________ >> > 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. >> >> >> >> -- >> Jim Holtman >> Data Munger Guru >> >> What is the problem that you are trying to solve? >> Tell me what you want to do, not how you want to do it. > > -- Jim Holtman Data Munger Guru What is the problem that you are trying to solve? Tell me what you want to do, not how you want to do it. ______________________________________________ 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.