Как выбрать строки по условию в R (с примерами)


Вы можете использовать один из следующих методов для выбора строк по условию в R:

Способ 1: выбор строк на основе одного условия

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

 points assists team
1 1 6 A
2 2 6 A
3 4 7 A
4 3 8 B
5 4 8 C
6 8 9 C

Способ 1: выбор строк на основе одного условия

В следующем коде показано, как выбирать строки на основе одного условия в R:

#select rows where team is equal to 'A'
df[df$team == 'A', ]

 points assists team
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', ]

 points assists team
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 , ]

 points assists team
2 2 6 A
3 4 7 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