Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 根据应用于列表项的条件获取df子集_R_Dataframe_Tibble - Fatal编程技术网

R 根据应用于列表项的条件获取df子集

R 根据应用于列表项的条件获取df子集,r,dataframe,tibble,R,Dataframe,Tibble,我想在项目组上循环,并使用它来检查子集数据帧的条件。我的代码现在抛出错误。我想检查en_nam1中的每个项目是否都通过了en1$attributes==item。如果它通过了条件,那么我想选择该行并添加另一个要返回的数据帧。多谢各位 A tibble: 3 x 2 attributes models <chr> <list> 1 AT01S <chr [2]> 2 AT02S <chr [2]> 3

我想在项目组上循环,并使用它来检查子集数据帧的条件。我的代码现在抛出错误。我想检查en_nam1中的每个项目是否都通过了en1$attributes==item。如果它通过了条件,那么我想选择该行并添加另一个要返回的数据帧。多谢各位

A tibble: 3 x 2
  attributes models   
  <chr>      <list>   
1 AT01S      <chr [2]>
2 AT02S      <chr [2]>
3 AGG101     <chr [1]>
4 AGG102     <chr [1]>
5 AGG103     <chr [1]>
6 AGG104     <chr [1]>

en_nam1
[1] "AT01S"  "AT02S"  "AGG101"

My code:
 en_nam1 %>%
+ map(~subset(en1, en1$attributes == .x))

Expected result:
 A tibble: 3 x 2
  attributes models   
  <chr>      <list>   
1 AT01S      <chr [2]>
2 AT02S      <chr [2]>
3 AGG101     <chr [1]>
A tibble:3 x 2
属性模型
1 AT01S
2 AT02S
3 AGG101
4 AGG102
5 AGG103
6 AGG104
en_nam1
[1] “AT01S”“AT02S”“AGG101”
我的代码:
en_nam1%>%
+映射(~子集(en1,en1$attributes==.x))
预期结果:
一个tibble:3x2
属性模型
1 AT01S
2 AT02S
3 AGG101

这里不需要循环。在%

library(dplyr)
en1 %>%
  filter(attributes %in% en_nam1)
基本R

subset(en1, attributes %in% en_nam1)

代码有什么问题使用
en1%>%filter(属性%in%en\u nam1)
子集(en1,属性%in%en\u nam1)
@akrun Ahhh!!!完美的谢谢你。@akrun我搞错了。错误:必须使用有效的下标向量子集行。如果
en_nam1
是向量对象名称,而
en1
是数据集,则不清楚为什么会出现错误