r - 如果变量观察出现在所有组中,则在 R 中过滤 tibble

标签 r filter dplyr

library(tidyverse)

dta <- tibble(
  date = c("2000-01-01", "2000-01-02", "2000-01-03", "2000-01-02","2000-01-03"),
  stock = c("A", "A", "A", "B", "B"),
  price = c("price_{A1}","price_{A2}","price_{A3}","price_{B1}","price_{B2}" )
)

数据在此小标题中给出(上面的代码):

# A tibble: 5 x 3
  date       stock price     
  <chr>      <chr> <chr>     
1 2000-01-01 A     price_{A1}
2 2000-01-02 A     price_{A2}
3 2000-01-03 A     price_{A3}
4 2000-01-02 B     price_{B1}
5 2000-01-03 B     price_{B2}

我想排除 1 行,因为日期 2000-01-01 不适用于 tibble 中的所有 stock

最佳答案

一个选项可能是:

library(dplyr)

dta %>%
  group_by(date) %>%
  filter(n_distinct(stock) != 1)

# A tibble: 4 x 3
# Groups:   date [2]
  date       stock price     
  <chr>      <chr> <chr>     
1 2000-01-02 A     price_{A2}
2 2000-01-03 A     price_{A3}
3 2000-01-02 B     price_{B1}
4 2000-01-03 B     price_{B2}

关于r - 如果变量观察出现在所有组中,则在 R 中过滤 tibble,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61913729/

相关文章:

r - 根据预定义向量和离散结果中的数据创建变量

r - 当绘图中使用超过 3 种颜色时,图例中的 geom_smooth 着色会产生误导

testing - Grails 集成测试过滤器

r - ifelse dplyr 显示错误的输出

java - 如何用梳状滤波器检测基频?

variables - Get-ADuser:无法识别搜索过滤器

r - 地圈/dplyr : create matrix of distance between coordinates

r - knitr kable 将单元格文本格式化为有序列表

windows - 将带有希腊文本的 .Rnw 编译为 pdf

r - 如何在 R 中根据给定条件(累积和)对数据进行分组?