Rename column name in R

with base

colnames(pg)
## [1] "species"           "island"            "bill_length_mm"   
## [4] "bill_depth_mm"     "flipper_length_mm" "body_mass_g"      
## [7] "sex"               "year"
pg_new <- pg
colnames(pg_new) <- paste("penguins", colnames(pg_new), sep = "_")
colnames(pg_new)
## [1] "penguins_species"           "penguins_island"           
## [3] "penguins_bill_length_mm"    "penguins_bill_depth_mm"    
## [5] "penguins_flipper_length_mm" "penguins_body_mass_g"      
## [7] "penguins_sex"               "penguins_year"

with dplyr

pg %>% 
  rename_with( ~ paste0("penguins_", .x)) %>% 
  colnames()
## [1] "penguins_species"           "penguins_island"           
## [3] "penguins_bill_length_mm"    "penguins_bill_depth_mm"    
## [5] "penguins_flipper_length_mm" "penguins_body_mass_g"      
## [7] "penguins_sex"               "penguins_year"
pg %>% 
  rename_with( ~ paste("penguins", .x, sep = "_")) %>% 
  colnames()
## [1] "penguins_species"           "penguins_island"           
## [3] "penguins_bill_length_mm"    "penguins_bill_depth_mm"    
## [5] "penguins_flipper_length_mm" "penguins_body_mass_g"      
## [7] "penguins_sex"               "penguins_year"
pg %>% 
  rename_with( ~ paste0(.x, "_penguins")) %>% # suffix
  colnames()
## [1] "species_penguins"           "island_penguins"           
## [3] "bill_length_mm_penguins"    "bill_depth_mm_penguins"    
## [5] "flipper_length_mm_penguins" "body_mass_g_penguins"      
## [7] "sex_penguins"               "year_penguins"