r - 根据数据框列表中的一列过滤行
问题描述
我有一个包含多个数据框的列表,我想通过每个数据框的一列中的某些值过滤列表中的这些数据框。列表中的每个数据框都有一个名为v1的列,该列具有特殊字符++、->,现在我确实只想过滤列表中每个数据框中具有此箭头 (->)的行。这是我的数据框示例,
dput(df)
df1 <- structure(list(v1 = c("->", "++", "->"),
t2 = c("James","Jane", "Egg")),
class = "data.frame", row.names = c(NA, -3L))
dput(df2)
df2 <- structure(list(v1 = c("++", "->", "->"),
t2 = c("James","Jane", "Egg")),
class = "data.frame", row.names = c(NA, -3L))
dput(df3)
df3 <- structure(list(v1 = c("++", "++", "->"),
t2 = c("James","Jane", "Egg"),
d3...c = c("James","Jane", "Egg")),
class = "data.frame", row.names = c(NA, -3L))
我已经尝试过了,但我没有得到过滤行的数据框
idx = "->"
dfs <- list(df1,df2,df3)
lapply(dfs, function(x) x$v1 %in% idx)
有人帮助
解决方案
idx <- "->"
# Base R
lapply(dfs, function(df) df[df$v1 == "->",])
lapply(dfs, function(df) df[df$v1 %in% idx,])
# tidyverse
library("purrr")
library("dplyr")
map(dfs, filter, v1 == "->")
map(dfs, filter, v1 %in% !! idx)
推荐阅读
- audio - 将 G.723.1 转换为普通 wav 和拆分通道?
- c# - c# Entity Framework 6 on delete cascade one to many
- python - 如何在搜索文本时打印 n 个上下文单词
- vba - 提示用户一次但将结果应用于多条消息的规则?
- python - 如何有效地检查python中的连续范围
- c - 我想将字符串从文件复制到变量 2d char
- c++ - C++ 二维数组表
- wordpress - 在我的 Wordpress 页脚中添加或删除小部件正在我的侧边栏中进行镜像
- node.js - Bitbucket Pipeline npm install 失败并显示“npm ERR!致命:无法访问”
- javascript - 如何在反应原生地图中获取边界