首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >执行dplyr::select with dplyr::

执行dplyr::select with dplyr::
EN

Stack Overflow用户
提问于 2020-05-13 01:15:13
回答 1查看 2.8K关注 0票数 4

我有一个数据(df_1):

代码语言:javascript
复制
df_1 <- structure(list(var_1 = c(99.4726192392409, 25.9155194833875), 
var_2 = c(99.9599985964596, 20.3848657943308), var_3 = c(93.1612774543464, 
31.651863809675), var_4 = c(54.2802151478827, 81.9601702317595
), var_5 = c(88.1385736726224, 94.7823309898376), var_6 = c(83.7288120947778, 
72.2155329957604), groups = structure(c(1L, 1L), .Label = c("1", 
"2", "3"), class = "factor")), row.names = c(1L, 10L), class = "data.frame")

我试过:

代码语言:javascript
复制
library(dplyr)

df_1 %>% 
  select_at(.vars = 'var_1')

      var_1
1  99.47262
10 25.91552

没问题的。但是:

代码语言:javascript
复制
df_1 %>% 
  select(across(.cols = 'var_1'))

错误:across()只能在dplyr动词中使用。

如何使用selectacross调整最后一个函数

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-13 01:26:41

在用于选择横穿横穿页面中,没有将selectacross一起使用的用例。根据?across文档

通过(),可以很容易地将相同的转换应用于多个列,从而允许在汇总()和mutate()中使用select()语义。summarise_at()取代了summarise_at()、summarise_if()和summarise_all()等一系列“作用域变体”。有关更多细节,请参见vignette("colwise")。

没有提到与select一起使用

在当前版本中,select可以使用未引号和引号的变量

代码语言:javascript
复制
library(dplyr)
df_1 %>%
       select('var_1')
#     var_1
#1  99.47262
#10 25.91552

df_1 %>% 
     select('var_1', 'var_2')
#      var_1    var_2
#1  99.47262 99.96000
#10 25.91552 20.38487


df_1 %>% 
      select(var_1, var_2)

或利用select_helpers starts_with/ends_with/matches/contains

代码语言:javascript
复制
df1_1 %>% 
      select(starts_with('var'))
#       var_1    var_2
#1  99.47262 99.96000
#10 25.91552 20.38487
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61764723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档