[R] Rename variables starting with digits

Duncan Murdoch murdoch@dunc@n @end|ng |rom gm@||@com
Tue Oct 5 19:11:11 CEST 2021


On 04/10/2021 2:02 p.m., Anne Zach wrote:
> Dear R users,
> 
> I have a dataframe that contains several variables, among which 105
> correspond to scores on certain trials. Unfortunately, when I imported this
> dataframe into R, I realised that the variable names corresponding to each
> trial begin with digits, which violates R naming conventions.
> 
> I am trying to relabel these variables by adding a 'v' as a prefix to each
> of them, I'd like to use tidyverse, but I am struggling with this process
> of renaming. When I run this chunk of code, no error occurs but my
> variables are not renamed. I'm fairly new to R and I can't understand what
> I'm doing wrong.
> 
> ```{r}
> 
> behavioral_df <- behavioral_df %>% rename_with(.fn =  ~paste0("v"),
> starts_with('^\\d'))
> 
> ```

You should also consider not renaming the columns.  R allows 
non-standard names to be used as long as you quote them somehow.  For 
example,

   behavioral_df[, "50%"]

will get you the column with name "50%", as will

   behavioral_df$`50%`

I suspect most tidyverse functions will be fine with the `50%` style of 
quoting.

Duncan Murdoch



More information about the R-help mailing list