Map function to only some columns

Many times I want to map a function over a DataFrame but not all of its columns. For example, suppose the first column is a Date column, but the remainder are Float64 columns, and I basically just want the first column to remain untouched.

Here is what I am doing right now

df_rates = hcat(df_levels[:,:YEAR],mapcols(loggrowth,df_levels[:,Not(:YEAR)]))

but this seems fragile.

Is this “map to all except X” something that has been discussed?