Estefanía Gómez Galimberti
2013-May-23 15:30 UTC
[R] apply function within different groups
Hi, I have a very big data frame and I would like to apply a function to one of the columns within different groups and obtain another dataframe My data frame is like this: group var1 var2 myvar group1 1 a 100 group2 2 b 200 group2 34 c 300 group3 5 d 400 group3 6 e 500 group4 7 f 600 and I woud like to apply this function to column myvar: mifunc = function(vec) { vec=as.vector(vec) for (i in 1:(length(vec)-1)){ vec[i]=vec[i+1]-1 } return(vec) } by the groups in column group. I would like to obtain the same dataframe but with f(myvar) instead of myvar. How can I do this? Thanks, Estefania [[alternative HTML version deleted]]
Hi, May be this helps: dat1<- read.table(text=" group var1 var2 myvar group1 1 a 100 group2 2 b 200 group2 34 c 300 group3 5 d 400 group3 6 e 500 group4 7 f 600 ",sep="",header=TRUE,stringsAsFactors=FALSE) library(plyr) ddply(dat1,.(group),summarize, f_myvar=mifunc(myvar)) #?? group f_myvar #1 group1????? NA #2 group2???? 299 #3 group2???? 300 #4 group3???? 499 #5 group3???? 500 #6 group4????? NA A.K. ----- Original Message ----- From: Estefan?a G?mez Galimberti <tefagg at yahoo.com> To: r help help <r-help at r-project.org> Cc: Sent: Thursday, May 23, 2013 11:30 AM Subject: [R] apply function within different groups Hi, I have a very big data frame and I would like to apply a function to one of the columns within different groups ?and obtain another dataframe My data frame is like this: group var1 var2 myvar group1 1 a 100 group2 2 b 200 group2 34 c 300 group3 5 d 400 group3 6 e 500 group4 7 f 600 and I woud like to apply this function to column myvar:? mifunc = function(vec) { vec=as.vector(vec) for (i in 1:(length(vec)-1)){ vec[i]=vec[i+1]-1 } return(vec) } by the groups in column group. I would like to obtain the same dataframe but with f(myvar) instead of myvar. How can I do this? Thanks,? Estefania ??? [[alternative HTML version deleted]] ______________________________________________ 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.