r - dplyr 是否可以操作输入数据集?
问题描述
我正在使用 dplyr 对数据框应用多个过滤器和选择操作。是否可以直接更改输入对象中的数据?
所以我想实现这样的目标:
library(dplyr)
mtcars %>%
filter(mpg>20) %>%
select(cyl) <- mtcars %>%
filter(mpg>20) %>%
transmute(cyl=8)
显然,这会导致错误。
在基础 R 中,它看起来像这样:
mtcars[which(mtcars$mpg>20),"cyl"] <- 8
mtcars
解决方案
一种方法是:
mtcars %>%
mutate(cyl = ifelse(mpg > 20, 8, cyl))
推荐阅读
- xml - 迁移我的逻辑以将我的 XML 从逻辑更改为 XSLT
- angular - Angular Route 默认辅助路由
- colors - 为什么 Leaflet setStyle({color: "FFFFFF"}) 使事物变成黑色而不是白色?
- sql - 标记是否存在 JOIN - SQL
- grafana - 创建 Grafana API 令牌的选项
- python - 从tensorflow记录数据集中批量提取图像数据集
- excel - 如何将excel列拆分为多行
- swift - 如何检查一个数组中的某些值而不会使程序崩溃
- flutter - 如何使用半径角创建 Flutter 自定义应用栏浮动样式?
- python - 如何使用 Http 触发器和队列消息输出修复 Azure 函数 (Python) 测试错误