相关疑难解决方法(0)

R dplyr:按组过滤常见值

我需要最好使用 dplyr 和 R 找到不同群体之间的共同价值观。

从我的数据集来看:

  group   val
  <fct> <dbl>
1 a         1
2 a         2
3 a         3
4 b         3
5 b         4
6 b         5
7 c         1
8 c         3
Run Code Online (Sandbox Code Playgroud)

预期输出是

group   val
<fct> <dbl>
1 a         3
2 b         3
3 c         3
Run Code Online (Sandbox Code Playgroud)

因为所有组中只有数字 3 出现。

这段代码似乎不起作用:

# Filter the data 

dd %>% 
  group_by(group) %>% 
  filter(all(val))           # does not work
Run Code Online (Sandbox Code Playgroud)

这里的示例解决了类似的问题,但具有定义的共享值向量。如果我不知道哪些是共享的怎么办?

虚拟示例:

# Reproducible example: filter all id by group
group = c("a", "a", …
Run Code Online (Sandbox Code Playgroud)

r dplyr

4
推荐指数
1
解决办法
691
查看次数

MySQL 关系划分

我在解决一项练习时遇到困难:

有一家餐厅,供应他们最喜欢的啤酒。

(是的,我们实际上在学校有这个:D)

我有 2 个可以使用的表:

  • 表 1:最喜欢的啤酒(名称、姓氏、啤酒名称)
  • 表 2:OnStock(啤酒名称、餐厅、数量)

我的解决方案是:OnStock % Favoritebeer

MySQL 中没有像 DIVISION 这样的东西。我有什么想法可以解决这个问题吗?我在维基百科上找到了以下内容:http : //en.wikipedia.org/wiki/Relational_algebra#Division_.28.C3.B7.29这正是我需要的,但我很难用 SQL 翻译它。

编辑:

这里的示例数据:http : //www.sqlfiddle.com/#!2/34e00

结果应该是:

Bucher Rolf
Mastroyanni Pepe
Meier Hans
Meier Hanspeter
Meier Hansruedi
Müller Heinrich
Peters Peter
Zarro Darween
Run Code Online (Sandbox Code Playgroud)

mysql relational-division

2
推荐指数
1
解决办法
3482
查看次数

通过在另一列中出现多个值来过滤组

类似于这个问题,但增加了皱纹。我只想过滤在组的任何行的特定列中具有两个(或全部几个)值的行组。

例如,假设我有这个数据框:

df <- data.frame(Group=LETTERS[c(1,1,1,2,2,2,3,3,3,3)], Value=c(5, 1:4, 1:4, 5))
Run Code Online (Sandbox Code Playgroud)

我想要那些字母,其中任何字母都有对应值为 4 的行和对应值为 5 的行,所以:

  Group Value
  <fct> <dbl>
1 C         2
2 C         3
3 C         4
4 C         5
Run Code Online (Sandbox Code Playgroud)

我能做到这一点与一对any内部调用filter是这样的:

df %>% 
  group_by(Group) %>% 
  filter(any(Value == 4),
         any(Value == 5))
Run Code Online (Sandbox Code Playgroud)

有没有办法在一行中进行过滤器调用?像:(注意这不起作用all_of不是真正的功能)

df %>% 
  group_by(Group) %>% 
  filter(all_of(Value == 4 & Value == 5))
Run Code Online (Sandbox Code Playgroud)

r dplyr

2
推荐指数
1
解决办法
649
查看次数

标签 统计

dplyr ×2

r ×2

mysql ×1

relational-division ×1