r - 删除嵌套在列表中的不匹配数据框名称
问题描述
我有两个由数据框组成的列表 - df_quintile 和 disease_df_quintile。我不知道如何简洁地表示它们,但这就是它们在 Rstudio 中的样子:
注意,disease_df_quintile 由 5 个数据帧(数据帧 1 到 5)组成,而 disease_df_quintile 由 4 个(数据帧 2 到 5)组成。我想交叉检查两个列表并删除两个列表未共享的任何数据帧 - 所以在这种情况下,我想从 df_quintile 列表中删除第一个数据帧。我怎样才能做到这一点?
谢谢你。
解决方案
独立于列表的内容,您可以首先找到重复的名称,然后对列表进行子集化:
##-- Fake lists
l1 <- as.list(1:5)
names(l1) <- 1:5
l2 <- as.list(2:5)
names(l2) <- 2:5
##-- Common names and subsetting
common_names <- intersect(names(l1), names(l2))
l1 <- l1[common_names]
l2 <- l2[common_names]
推荐阅读
- javascript - 在映射的详细信息中使用按钮会引发错误“渲染未返回任何内容”
- javascript - 函数返回已解决的承诺而不是数据
- python - Pandas:如何根据来自同一数据帧的数据创建列?
- c - C中使用32位int和四个char数组的XOR加密
- java - org.codehaus.jackson.JsonNode.asText() 中的 NoSuchMethodError 与 Jackson
- apache-kafka - 如何使用spring cloud从kafka中两个服务实例中的所有分区消费
- python - NotImplementedError:不支持文本模式,使用 mode='wb' 并在 s3fs 中管理字节
- forms - 从工作表填充多项选择网格
- c# - 如何从 ASP.NET MVC5 中的过滤器属性调用异步方法
- java - 无法访问主线程上的数据库,因为它可能会长时间锁定 UI 错误