基于两列ID'选择的因子水平的子集数据;s在R

基于两列ID'选择的因子水平的子集数据;s在R,r,shiny,data-manipulation,r-plotly,R,Shiny,Data Manipulation,R Plotly,所以我有一些类似的数据 f1 <- data.frame(MY = c("18-1", "18-1", "18-2", "18-2","18-2","18-2","18-2", "18-3", "18-3","18-3"), Factor = c(1,1,1,2,3,3,2,3,1,1), More_Data = 1:10) f1 <- f1 %>% group_by(MY) %&

所以我有一些类似的数据

f1 <- data.frame(MY = c("18-1", "18-1",
                        "18-2", "18-2","18-2","18-2","18-2",
                        "18-3", "18-3","18-3"), Factor = c(1,1,1,2,3,3,2,3,1,1), More_Data = 1:10)

f1 <- f1 %>% group_by(MY) %>% mutate(ID = row_number() - 1)


   MY    Factor More_Data    ID
   <fct>  <dbl>     <int> <dbl>
 1 18-1       1         1     0
 2 18-1       1         2     1
 3 18-2       1         3     0
 4 18-2       2         4     1
 5 18-2       3         5     2
 6 18-2       3         6     3
 7 18-2       2         7     4
 8 18-3       3         8     0
 9 18-3       1         9     1
10 18-3       1        10     2
f1%变异(ID=row\u number()-1)
我的因子更多\u数据ID
1 18-1       1         1     0
2 18-1       1         2     1
3 18-2       1         3     0
4 18-2       2         4     1
5 18-2       3         5     2
6 18-2       3         6     3
7 18-2       2         7     4
8 18-3       3         8     0
9 18-3       1         9     1
10 18-3       1        10     2
我想根据我的属性选择一个ID,并获得与整个数据集中的因子相关的所有行

因此,如果我选择ID1,然后它与我的18-1相关,那么我需要一个数据集,通过选择因子级别,看起来像这样

   MY    Factor More_Data    ID
   <fct>  <dbl>     <int> <dbl>
 1 18-1       1         1     0
 2 18-1       1         2     1
 3 18-2       1         3     0
 9 18-3       1         9     1
10 18-3       1        10     2
MY Factor More\u数据ID
1 18-1       1         1     0
2 18-1       1         2     1
3 18-2       1         3     0
9 18-3       1         9     1
10 18-3       1        10     2
请注意,我将所有因子保留为1,而不考虑我的和ID

我的最佳尝试:

ID <- 1

f1[f1$Factor == f1$Factor[f1$ID == ID],]

  MY    Factor More_Data    ID
  <fct>  <dbl>     <int> <dbl>
1 18-1       1         1     0
2 18-2       1         3     0
3 18-3       1         9     1
4 18-3       1        10     2

ID
f1所以我不确定这是否适用于更改MY,我还需要先选择ID,然后选择该行上的MY,然后选择系数。您可以传入一个值来替换硬编码的
'18-1'
。并将ID的子集添加到
rbind
f1不完全是它。此外,每单击一次鼠标,系数也会发生变化。基本上,当我点击一个点时,我会得到一个点编号,这是一个与不断变化的MY和一个不断变化的ID相关的点,我会得到相关因子水平值的所有观察值。