On Mon, Apr 18, 2011 at 2:10 PM, Alaios <ala...@yahoo.com> wrote: > Dear Andreas, > I would like to thank you for your reply. > I have tried two alternatives but none of the two worked out: > > F2[i+1,j+1]<-sum(lapply(1:nrow(cells), function(rowInd) > Fwithcellvalue(i=i,j=j,a=cells[rowInd,2],b=cells[rowInd,4],c=cells[rowInd,1],d=cells[rowInd,3],e=cells[rowInd,5]))) > > this one is executed : takes like 2 mins to return(which is normal) but > returns the following > > ^@Error in sum(lapply(1:nrow(cells), function(rowInd) Fwithcellvalue(i = i, : > invalid 'type' (list) of argument
The lapply part worked but for sum you need a vector rather than a list (which is the result of lapply). So e.g. sum(unlist(lapply(..... something .....))) should work. KK > > > afterwards I tried to change the function definition so to pass i,j inside: > > This one does not execute at all > > F2[i+1,j+1]<-sum(lapply(1:nrow(cells), function(rowInd,i,j) > Fwithcellvalue(i=i,j=j,a=cells[rowInd,2],b=cells[rowInd,4],c=cells[rowInd,1],d=cells[rowInd,3],e=cells[rowInd,5]))) > Error in paste("f", i, j, "(a,b,c,d)", sep = "") : > argument "i" is missing, with no default > > > What do you think I should try out now? > > Vielen Dank > Alex > > --- On Mon, 4/18/11, Andreas Borg <andreas.b...@unimedizin-mainz.de> wrote: > >> From: Andreas Borg <andreas.b...@unimedizin-mainz.de> >> Subject: Re: [R] mapply to lapply >> To: "Alaios" <ala...@yahoo.com> >> Cc: R-help@r-project.org >> Date: Monday, April 18, 2011, 11:10 AM >> My solution would be to use an index >> variable that goes from 1 to the number of rows that are to >> be processed, along with a helper function which calls >> Fwithcellvalue with the suitable arguments: >> >> F2[i+1,j+1]<-sum(lapply(1:nrow(cells), function(rowInd) >> Fwithcellvalue(i=i,j=j,a=cells[rowInd,2],b=cells[rowInd,4],c=cells[rowInd,1],d=cells[rowInd,3],e=cells[rowInd,5])) >> >> >> Best regards, >> >> Andreas >> >> Alaios schrieb: >> > Dear all, >> > >> > I would like to ask your help concerning converting a >> mapply function to lapply. The reason is that I would like >> to use mclapply which requires lapply syntax. >> > >> > The command I would like to convert is: >> > >> F2[i+1,j+1]<-sum(mapply(Fwithcellvalue,i=i,j=j,a=cells[,2],b=cells[,4],c=cells[,1],d=cells[,3],e=cells[,5])) >> > >> > Could you please help me understand how I should >> change it? >> > >> > >> > Best Regards >> > Alex >> > >> > ______________________________________________ >> > 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. >> > >> > >> >> >> -- Andreas Borg >> Medizinische Informatik >> >> UNIVERSITÄTSMEDIZIN >> der Johannes Gutenberg-Universität >> Institut für Medizinische Biometrie, Epidemiologie und >> Informatik >> Obere Zahlbacher Straße 69, 55131 Mainz >> www.imbei.uni-mainz.de >> >> Telefon +49 (0) 6131 175062 >> E-Mail: b...@imbei.uni-mainz.de >> >> Diese E-Mail enthält vertrauliche und/oder rechtlich >> geschützte Informationen. Wenn Sie nicht der >> richtige Adressat sind oder diese E-Mail irrtümlich >> erhalten haben, informieren Sie bitte sofort den >> Absender und löschen Sie diese Mail. Das unerlaubte >> Kopieren sowie die unbefugte Weitergabe >> dieser Mail und der darin enthaltenen Informationen ist >> nicht gestattet. >> >> > > ______________________________________________ > 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. > ______________________________________________ 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.