r - 在dplyr的链接操作中切片向量

标签 r dplyr

如何在与dplyr链接时对 vector 进行 slice

v <- 1:10
#can be easily done with 
v[v > 5]
#use chaining 
v %>% ??

我想让自己习惯于链接...

最佳答案

使用这个:

library(magrittr)
v <- 1:10

尝试以下任何一种方法:

1)从magrittr中提取使用extract
v %>% extract(. > 5)
## [1]  6  7  8  9 10

2)[ extract[的同义词,因此它也可以使用:
v %>% `[`(. > 5)
## [1]  6  7  8  9 10

3)子集这类似于,但使用subset代替extract[:
v %>% subset(. > 5)
## [1]  6  7  8  9 10

4)过滤器 R为函数式编程提供Filter函数:
v %>% Filter(f = . %>% { . > 5 })
## [1]  6  7  8  9 10

4a)相同,但是使用普通的匿名函数表示法:
v %>% Filter(f = function(x) x > 5)
## [1]  6  7  8  9 10

更新:添加了其他解决方案,重新排列并添加了标题。

关于r - 在dplyr的链接操作中切片向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45355038/

相关文章:

重命名管道中的多个变量

r - dplyr::lead 或 data.table::shift 引用变量值而不是标量

r - 跨列使用 case_when 创建新列

mysql - RMySQL 死锁解决方法

r - 查找数据框中是否存在列

在 R 中重新排列数据框

r - 将行添加到数据框中以进行非观察

r - 仅乘以数据框的数值

r - 索引操作删除属性

r - 从 R 中的行创建 ID 列