Odp.: jak znaleźć pierwszy wiersz spełniający kryteria


Aby znaleźć pierwszy wiersz ramki danych w R, który spełnia określone kryteria, możesz użyć następujących metod:

Metoda 1: Znajdź pierwszy wiersz spełniający kryterium

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

Metoda 2: Znajdź pierwszy wiersz spełniający wiele kryteriów

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

Metoda 3: Znajdź pierwszy wiersz spełniający jedno z wielu kryteriów

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

Poniższe przykłady pokazują, jak w praktyce wykorzystać każdą metodę z następującą ramką danych w 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

Przykład 1: Znajdź pierwszy wiersz spełniający kryterium

Możemy użyć następującej składni, aby znaleźć pierwszy wiersz, w którym wartość w kolumnie zespołu jest równa „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

Widzimy, że pierwszy wiersz, w którym wartość w kolumnie zespołu jest równa „B”, jest czwartym wierszem w ramce danych.

Przykład 2: Znajdź pierwszy wiersz spełniający wiele kryteriów

Możemy użyć następującej składni, aby znaleźć pierwszy wiersz, w którym wartość w kolumnie punktów jest większa niż 15, a wartość w kolumnie asyst jest większa niż 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

Widzimy, że pierwszy wiersz, w którym wartość w kolumnie punktów jest większa niż 15, a wartość w kolumnie asyst jest większa niż 10, jest trzecim wierszem ramki danych.

Przykład 3: Znajdź pierwszy wiersz spełniający jedno z wielu kryteriów

Możemy użyć następującej składni, aby znaleźć pierwszy wiersz, w którym wartość w kolumnie punktów jest większa niż 15 lub wartość w kolumnie asyst jest większa niż 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

Widzimy, że pierwszy wiersz, w którym wartość w kolumnie punktów jest większa niż 15 lub wartość w kolumnie asyst jest większa niż 10, jest pierwszym wierszem ramki danych.

Uwaga : & i | operatory reprezentują odpowiednio „i” i „lub” w R.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w języku R:

Jak znaleźć maksymalną wartość w każdym wierszu w R
Jak obliczyć medianę wartości wierszy w R
Jak znaleźć unikalne wiersze w wielu kolumnach w R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *