0

我有一个我想查询的数据框。请注意,该数据框的列可能会更改,并且列名具有 spcaes。我有一个要应用于数据框列的函数。我想我可以通过编程找出存在哪些列,然后使用该列列表将函数应用于存在的列。

当列名没有空格时,我能够弄清楚如何做到这一点:请参阅下面的代码

library(tidyverse)
library(rlang)
col_names <- c("cyl","mpg","New_Var")
cc <- rlang::quos(col_names)
mtcars%>%mutate(New_Var=1)%>%select(!!!cc)

但是当列名有空格时,这种方法不起作用,下面是我使用的代码:

col_names <- c("cyl","mpg","`New Var`")
cc <- rlang::quos(col_names)
mtcars%>%mutate(`New Var`=1)%>%select(!!!cc)

有没有办法在不更改名称的情况下选择名称中有空格的列?

4

1 回答 1

0

对于带有空格的值,您不必做任何不同的事情。例如,

library(dplyr)
library(rlang)

col_names <- c("cyl","mpg","New Var")
cc <- quos(col_names)
mtcars %>% mutate(`New Var`=1) %>% select(!!!cc)

另请注意,这select也接受字符串名称,因此也可以:

mtcars%>% mutate(`New Var`=1) %>% select(col_names)
于 2020-08-22T06:57:38.363 回答