R is a but of a horror show under the hood, I agree, but if you're just an end user doing data analysis, consider:
flights.iloc[0:10, flights.columns.get_indexer(['year', 'month', 'day'])])
versus flights %>% select("year", "month", "day") %>% head(10)
I could go on...