当前位置: 首页 > 编程笔记 >

如何使用dplyr从R数据框中过滤某些字符串的列值?

燕英奕
2023-03-14
本文向大家介绍如何使用dplyr从R数据框中过滤某些字符串的列值?,包括了如何使用dplyr从R数据框中过滤某些字符串的列值?的使用技巧和注意事项,需要的朋友参考一下

筛选数据可以帮助我们制作所需的数据组,而不是将其进一步用于分析。这样,可以实现精度并且计算变得容易。假设我们有一个同质组,然后根据某些特征对该组进行分区,则可以使用dplyr包的过滤功能。

示例

请看以下数据帧-

> Subject<-rep(c("Stats","Physics","Chemistry","Bio","IT","Marketing"),
+ times=c(5,8,7,6,9,5))
> Score<-sample(1:100,40,replace=TRUE)
> df<-data.frame(Subject,Score)
> head(df,20)
 Subject Score
1 Stats 88
2 Stats 20
3 Stats 49
4 Stats 31
5 Stats 83
6 Physics 29
7 Physics 43
8 Physics 73
9 Physics 28
10 Physics 74
11 Physics 93
12 Physics 42
13 Physics 73
14 Chemistry 29
15 Chemistry 53
16 Chemistry 70
17 Chemistry 42
18 Chemistry 99
19 Chemistry 10
20 Chemistry 28

加载dplyr软件包-

> library(dplyr)

现在假设我们要过滤主题,如下所示:

> Subject1<-c("Physics","Chemistry")
> df %>% filter(Subject %in% Subject1)
    Subject Score
 1   Physics 29
 2   Physics 43
 3   Physics 73
 4   Physics 28
 5   Physics 74
 6   Physics 93
 7   Physics 42
 8   Physics 73
 9 Chemistry 29
10 Chemistry 53
11 Chemistry 70
12 Chemistry 42
13 Chemistry 99
14 Chemistry 10
15 Chemistry 28
> Subject2<-c("Stats","Marketing","IT")
> df %>% filter(Subject %in% Subject2)
     Subject Score
 1     Stats 88
 2     Stats 20
 3     Stats 49
 4     Stats 31
 5     Stats 83
 6        IT 26
 7        IT 70
 8        IT 71
 9        IT 74
10        IT 10
11        IT 8
12        IT 42
13        IT 62
14        IT 90
15 Marketing 41
16 Marketing 39
17 Marketing 66
18 Marketing 4
19 Marketing 96
> Subject3<-c("Bio")
> df %>% filter(Subject %in% Subject3)
Subject Score
1 Bio 82
2 Bio 96
3 Bio 25
4 Bio 61
5 Bio 47
6 Bio 95
 类似资料:
  • 本文向大家介绍如何过滤R中包含某个字符串的行?,包括了如何过滤R中包含某个字符串的行?的使用技巧和注意事项,需要的朋友参考一下 我们可以通过使用dplyr包的filter和grepl函数来做到这一点。 示例 考虑mtcars数据集。 假设我们要过滤类型为Ferrari的行,则可以按以下步骤进行操作- 现在,如果要过滤类型为Merc或Datsun的行,则可以按以下步骤进行操作- 假设如果要过滤没有M

  • 如何防止用户在“JTextField”中输入某些字符,如果输入该字符,则不要在文本字段中显示它

  • 假设我有一个像 如何筛选此列中所有部分找到的字符串,例如获取结果 没有指出我想过滤哪些术语(苹果|梨),而是通过自我引用的方式(即它确实根据整列检查每个术语,并删除部分匹配的术语)。令牌的数量不受限制,字符串的一致性也不受限制(即“苹果”将与“苹果”匹配)。这将导致基于dplyr的反向广义版本 此外,使用这种分离来获得累计金额会很有趣,例如。 我无法让它与包含()或grep()一起工作。 谢啦

  • 本文向大家介绍如何使用dplyr根据与列名称匹配的字符串选择R中的列?,包括了如何使用dplyr根据与列名称匹配的字符串选择R中的列?的使用技巧和注意事项,需要的朋友参考一下 R中的列选择通常使用列号或其名称和$delta运算符完成。我们还可以选择带有部分名称字符串或完整名称的列,而无需使用$delta运算符。这可以通过dplyr软件包的select and match功能来完成。 示例 加载dp

  • 本文向大家介绍如何仅从R数据框中选择数字列?,包括了如何仅从R数据框中选择数字列?的使用技巧和注意事项,需要的朋友参考一下 最简单的方法是使用dplyr包的select_if函数,但我们也可以通过lapply来实现。 使用dplyr 使用lapply

  • 如果不使用我如何在没有的情况下过滤数据? 假设我有一个矩阵,客户将填写或其任何变体,其他人则将其留空: 输出: 我如何过滤掉值,这样我就可以得到这样的结果: 我想我需要像但是tilda不能处理字符串。