r - 为什么在使用过滤器时将 tibble 中的命名列表列转换为列表
问题描述
有一个包含命名列表 val 列的小标题。
tibble = tibble::tibble(val = list(list(1,2), list(3,2), list("a","b")),
name = c("a", "b", "c"))
names(tibble$val) = tibble$name
tibble
# A tibble: 3 x 2
val name
<named list> <chr>
1 <list [2]> a
2 <list [2]> b
3 <list [2]> c
但是,使用过滤器时,val 列中的名称会消失。你能告诉我如何避免这种情况吗?
tibble %>%
dplyr::filter(name %in% c("a", "b"))
# A tibble: 2 x 2
val name
<list> <chr>
1 <list [2]> a
2 <list [2]> b
解决方案
推荐阅读
- c# - 来自 SubList 或 SubList 属性的 LINQ NULL 异常
- python - 无法在 Python 3 中安装 bz2
- javascript - 如何使用 JavaScript 中的 Sql 查询为 Promise 函数制作模板?
- swift - 如何将类对象传递给函数但防止突变?
- ibm-cloud - 我无法在 IBM Visual Recognition 中选择精简计划
- python - 安装各种 Python 包时的 AttributeErrors
- go - ssh sftp服务器中NewChannel与Request之间的区别
- java - android - 如何获取系统音频的位置
- c++ - 在不使用数组/向量的情况下在 C++ 中添加二进制数的问题
- regex - .htaccess 重写:从 url 中删除参数