r - 数据代词不适用于 dplyr::lst()?
问题描述
library(dplyr)
zone <- c(rep(10,4), rep(20, 4), rep(30, 4))
value <- c(4.5,4.3,4.6, 5,5, rep(3,7)) + round(rnorm(12, sd = 0.1),1)
df <- data.frame(zone, value)
# Works
dplyr::group_by(df, .data$zone) %>% dplyr::summarise(var3 = dplyr::lst(value)) %>% dplyr::ungroup() %>% as.data.frame()
# Error
dplyr::group_by(df, .data$zone) %>% dplyr::summarise(var3 = dplyr::lst(.data$value)) %>% dplyr::ungroup() %>% as.data.frame()
有没有办法来解决这个问题?否则,如果我使用裸名,我会在该值没有可见的全局变量绑定中value
收到警告。R CMD check
value
解决方案
正如@Jake 所建议的那样,该dplyr::lst()
功能处于质疑生命周期阶段。因此,此任务的推荐函数是rlang::list2()
。
dplyr::group_by(df, .data$zone) %>% dplyr::summarise(var3 = rlang::list2(.data$value)) %>% dplyr::ungroup() %>% as.data.frame()
推荐阅读
- c++ - C++ 双指针赋值
- python - 如何更改 kivymd 的 MdTextField 中的前景色?
- phpunit - 如何检查 Laravel 刀片组件是否已加载?
- r - 闪亮的应用程序与服务器断开连接。没有错误
- c++ - 为什么 code::blocks 在编译 C++ 文件时出现问题
- python - 如何在 Web IDE 中使用 IPython 模块
- android - > 任务 :app:transformDexArchiveWithDexMergerForRelease 失败(重复类问题)
- java - 如何将微调器中的 Integer[] 转换为 int 或 Integer 以进行计算
- asp.net-mvc - 模型未传递给控制器(MVC 核心)
- google-apps-script - 使用谷歌应用脚本通过人员 api 将创建的联系人添加到群组