mydf$newvar <- with(mydf, oldvar1/oldvar2)
mydf <- dplyr::mutate(mydf, newvar=oldvar1/oldvar2)
You can then use the pipe operator %>% to funnel the results of one operator into the next.
The real advantages is that you can easily build up a selection of functions which can be read from left to right (rather than right to left in summary(coef(mylm))) and the reduction in temporary variables.
Pandas, on the other hand looks like base R (which is fine, but not as nice as dplyr).
However, the niceness of pipes does all fall apart when you have an error in the middle and you need to start deleting things in order to debug.