# If a condition is met in a specific column (column "b" is 0),
# change the value in column "est". Here the value is replaced
# by the value for "a" in that same row where b == 0.
df$est[df$b == 0] <- df$a[df$b == 0]
df <- within(df, est[b==0] <- (a[b==0]-5)/2.533)