Для вашей задачи нет необходимости использовать цикл, вместо этого вы можете использовать векторизованный подход.В R вы всегда должны искать варианты для векторизации вашего кода, так как это более лаконично и быстрее, чем циклы.Это не означает, что циклы не очень хороши сами по себе, вы должны просто проверить, можете ли вы использовать более простой подход.
В вашем случае вы можете использовать замену имен на основе индекса, как показано ниже.
# use the R internal mtcars as exemplary data
dat = mtcars
# replace colnames by index
colnames(dat)[2:ncol(dat)] = colnames(dat)[1:(ncol(dat)-1)]
# compare the results to the original data
colnames(mtcars)
# [1] "mpg" "cyl" "disp" "hp" "drat" "wt" "qsec" "vs" "am" "gear" "carb"
colnames(dat)
# [1] "mpg" "mpg" "cyl" "disp" "hp" "drat" "wt" "qsec" "vs" "am" "gear"