如何在 r 中按条件选择行(带有示例)
您可以使用以下任意方法在 R 中按条件选择行:
方法一:根据条件选择行
df[df$var1 == ' value ', ]
方法2:根据多个条件选择行
df[df$var1 == ' value1 ' & df$var2 > value2 , ]
方法3:根据列表中的值选择行
df[df$var1 %in% c(' value1 ', ' value2 ', ' value3 '), ]
以下示例展示了如何在 R 中将每种方法与以下数据帧一起使用:
#create data frame df <- data. frame (points=c(1, 2, 4, 3, 4, 8), assists=c(6, 6, 7, 8, 8, 9), team=c('A', 'A', 'A', 'B', 'C', 'C')) #view data frame df team assists points 1 1 6 A 2 2 6 A 3 4 7 A 4 3 8 B 5 4 8 C 6 8 9 C
方法一:根据条件选择行
以下代码显示了如何根据 R 中的条件选择行:
#select rows where team is equal to 'A' df[df$team == ' A ', ] team assists points 1 1 6 A 2 2 6 A 3 4 7 A
请注意,仅选择团队等于“A”的行。
我们还可以使用!=来选择不等于某个值的行:
#select rows where team is not equal to 'A' df[df$team != ' A ', ] team assists points 4 3 8 B 5 4 8 C 6 8 9 C
方法2:根据多个条件选择行
以下代码展示了如何在 R 中根据多个条件选择行:
#select rows where team is equal to 'A' and points is greater than 1 df[df$team == ' A ' & df$points > 1 , ] team assists points 2 2 6 A 3 4 7 A
请注意,仅选择队伍等于“A”且分数大于 1 的行。
方法3:根据列表中的值选择行
以下代码显示如何选择某一列的值属于值列表的行:
#select rows where team is equal to 'A' or 'C' df[df$team %in% c(' A ', ' C '), ]
请注意,仅选择团队等于“A”或“C”的行。
其他资源
以下教程解释了如何在 R 中执行其他常见操作:
如何选择R中任意列中出现值的行
如何在 R 中选择特定列
如何在R中按索引选择列