A: як знайти перший рядок, який відповідає критеріям


Ви можете використовувати наступні методи, щоб знайти перший рядок кадру даних у R, який відповідає певним критеріям:

Спосіб 1. Знайдіть перший рядок, який відповідає критерію

 #get first row where value in 'team' column is equal to 'B'
df[which(df$team == ' B ', arr. ind = TRUE )[1],]

Спосіб 2. Знайдіть перший рядок, який відповідає декільком критеріям

 #get first row where 'points' column > 15 and 'assists' column > 10
df[which(df$points>15 & df$assists>10, arr. ind = TRUE )[1],]

Спосіб 3: знайдіть перший рядок, який відповідає одному з багатьох критеріїв

 #get first row where 'points' column > 15 or 'assists' column > 10
df[which(df$points>15 | df$assists>10, arr. ind = TRUE )[1],]

У наведених нижче прикладах показано, як використовувати кожен метод на практиці з таким кадром даних у R:

 #create data frame
df <- data. frame (team=c('A', 'A', 'A', 'B', 'B', 'C', 'C', 'C'),
                 points=c(18, 13, 19, 14, 24, 21, 20, 28),
                 assists=c(5, 7, 17, 9, 12, 9, 5, 12))

#view data frame
df

  team points assists
1 to 18 5
2 to 13 7
3 A 19 17
4 B 14 9
5 B 24 12
6 C 21 9
7 C 20 5
8 C 28 12

Приклад 1: знайдіть перший рядок, який відповідає критерію

Ми можемо використати такий синтаксис, щоб знайти перший рядок, де значення в стовпці team дорівнює “B”:

 #find first row where team is equal to 'B'
df[which(df$team == ' B ', arr. ind = TRUE )[1],] 

  team points assists
4 B 14 9

Ми бачимо, що перший рядок, де значення в стовпці team дорівнює “B”, є четвертим рядком у кадрі даних.

Приклад 2: знайдіть перший рядок, який відповідає декільком критеріям

Ми можемо використати наступний синтаксис, щоб знайти перший рядок, де значення в стовпці очок більше 15, а значення в стовпці передач більше 10:

 #find first row where points > 15 and assists > 10
df[which(df$points>15 & df$assists>10, arr. ind = TRUE )[1],] 

  team points assists
3 A 19 17

Ми бачимо, що перший рядок, де значення в стовпці очок більше 15, а значення в стовпці передач більше 10, є третім рядком кадру даних.

Приклад 3: знайдіть перший рядок, який відповідає одному з багатьох критеріїв

Ми можемо використати наступний синтаксис, щоб знайти перший рядок, де значення в стовпці очок більше 15 або значення в стовпці передач більше 10:

 #find first row where points > 15 or assists > 10
df[which(df$points>15 | df$assists>10, arr. ind = TRUE )[1],]

  team points assists
1 to 18 5

Ми бачимо, що перший рядок, де значення в стовпці очок більше 15 або значення в стовпці передач більше 10, є першим рядком кадру даних.

Примітка : & та | оператори представляють «і» та «або» в R відповідно.

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання в R:

Як знайти максимальне значення в кожному рядку в R
Як обчислити середнє значення рядків у R
Як знайти унікальні рядки в кількох стовпцях у R

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *