Hi Maria, Why not exploit some simple boolean facts (FALSE=0, TRUE=1) in your calculation, so
ASBclass = c(1,2,2,3,2,1) Flow = c(1,1,1,1,1,1) factor = ((ASBclass==1) * 0.1 + (ASBclass==2) * 0.15 + (ASBclass==3) * 0.2) deviation = factor * Flow cheers Peter > On 15 Sep 2015, at 12:56, Maria Lathouri <mlatho...@yahoo.gr> wrote: > > Dear all, > > I am writing as I would like your help. I have a dataframe with two columns, > ASB and Flow, where the the first one has values 1, 2 or 3 and the second > flow data. Something like that: > ASBclass Flow1 11.51 9.2 > 2 10.5 > 3 6.7 ... ... > I would like to produce a third column named eg. deviation where it would get > me values based on if ASBclass is 1, multiply Flow by 0.1; if ASBclass is 2 > then multiply Flow by 0.15 and if ASBclass is 3 then multiply by 0.2. > > If (ASBclass=1) { deviation<-Flow*0.1} > If (ASBclass=2) { deviation<-Flow*0.15}If (ASBclass=1) { deviation<-Flow*0.2} > I am not sure whether I should add the else function and how can I combine > these separate functions. > > Can anyone help me on that? > Thank you very much. > > Kind regardsMaria > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > 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 -- To UNSUBSCRIBE and more, see 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.