如何在 r 中使用“or”运算符(附示例)
您可以使用| R 中的符号为“OR”运算符。
例如,您可以使用以下基本语法来过滤 R 数据框中满足条件 1或条件 2 的行:
df[(condition1) | (condition2), ]
以下示例展示了如何在不同场景中使用此“OR”运算符。
示例1:在R中使用“OR”运算符根据数值过滤行
假设我们在 R 中有以下数据框:
#create data frame
df <- data. frame (team=c('A', 'A', 'B', 'B', 'B', 'B', 'C', 'C'),
points=c(25, 12, 15, 14, 19, 23, 25, 29),
assists=c(5, 7, 7, 9, 12, 9, 9, 4),
rebounds=c(11, 8, 10, 6, 6, 5, 9, 12))
#view data frame
df
team points assists rebounds
1 to 25 5 11
2 A 12 7 8
3 B 15 7 10
4 B 14 9 6
5 B 19 12 6
6 B 23 9 5
7 C 25 9 9
8 C 29 4 12
我们可以使用以下语法来过滤数据框中的点列中的值大于 20或辅助列中的值等于 9 的行:
#filter rows where points > 20 or assists = 9 df[(df$points > 20 ) | (df$assists == 9 ), ] team points assists rebounds 1 to 25 5 11 4 B 14 9 6 6 B 23 9 5 7 C 25 9 9 8 C 29 4 12
返回的唯一行是那些得分值大于 20或助攻值等于 9 的行。
示例2:在R中使用“OR”运算符根据字符串值过滤行
假设我们在 R 中有以下数据框:
#create data frame
df <- data. frame (team=c('A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'),
position=c('G', 'G', 'F', 'F', 'C', 'F', 'C', 'C'),
conference=c('W', 'W', 'W', 'W', 'E', 'E', 'E', 'E'),
dots=c(11, 8, 10, 6, 6, 5, 9, 12))
#view data frame
df
team position conference points
1 AGW 11
2 BGW 8
3 CFW 10
4 DFW 6
5 ECE 6
6 FFE 5
7 GCE 9
8 HCE 12
我们可以使用以下语法来过滤数据框中位置列中的值等于 G或位置列中的值等于 F或团队列中的值等于 H 的行:
#filter rows based on string values df[(df$team == ' H ') | (df$position == ' G ') | (df$position == ' F '), ] team position conference points 1 AGW 11 2 BGW 8 3 CFW 10 4 DFW 6 6 FFE 5 8 HCE 12
返回的唯一行是那些至少满足三个指定条件之一的行。
其他资源
以下教程解释了如何在 R 中使用其他常见运算符: